powered by simpleCommunicator - 2.0.60     © 2026 Programmizd 02
Целевая тема:
Создать новую тему:
Автор:
Закрыть
Цитировать
Форумы / FoxPro, Visual FoxPro [игнор отключен] [закрыт для гостей] / Search Path, меню, форма
15 сообщений из 15, страница 1 из 1
Search Path, меню, форма
    #32321552
IgorProgrammer
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Гость
Всем добрый день...
У меня в 8-ой лисе не сохраняется в настройках Search Path...
Как это побороть???

Как можно обратиться к меню???
У меня меню цепляется на форму...

DEFINE MENU (m.cMenuName) IN (m.oFormRef.Name) BAR

Мне надо при этом присвоить какой-либо переменной эту менюшку и работать с ней как с объектом...
Переменная может быть или формы или паблик...
В менюшке появилось свойство INVERT... как можно в процессе работы им манипулировать???

Главная форма (form1)
form1.showwindow = 2
Из нее запускаю form2
form2.showwindow = 1
Из нее запускаю form3
form3.showwindow = 1

Как можно отследить нажатие вне формы form3 и закрыть ее???

Все заранее спасибо...
...
Рейтинг: 0 / 0
Search Path, меню, форма
    #32322479
Фотография Hel!Riser
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
автор писал:У меня в 8-ой лисе не сохраняется в настройках Search Path...
Как это побороть???

скорей фсего у тебя в Config.FPW есть строчка PATH=. кот и перебивает сохраняемые через среду настройки. А если нет - то заведи их тама! :)
...
Рейтинг: 0 / 0
Search Path, меню, форма
    #32322767
IgorProgrammer
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Гость
Hel!Riser:
скорей фсего у тебя в Config.FPW есть строчка PATH=. кот и перебивает сохраняемые через среду настройки. А если нет - то заведи их тама! :)

Не было... Завел... Результат - тот же.

А что по поводу менюхи и формы...
Очень надо решить эти траблы... а то время идет, а работа стоит...

Еще один глюк... В 6-ой лисе к екзшнику цеплялась иконка...
В 8-ой лисе ципляется лиса... хотя иконка есть... и в свойствах проекта она есть...
При компиляции к екзшнику не ципляются данные о версиии...

Какой-то ужас с переходом на 8-ую лису...
...
Рейтинг: 0 / 0
Search Path, меню, форма
    #32322834
andrew_Pr
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
У меня в 8-ке и иконка цепляется в проект, и с SearchPath сохраняется. Может у тебя конкретно какая-то левая копия? Где брал-то?
...
Рейтинг: 0 / 0
Search Path, меню, форма
    #32322917
IgorProgrammer
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Гость
andrew_Pr:
В КвазарМикро...
А они заказывали в Бостоне если я не ошибаюсь...
Короче лицензионка это...
Правда без SP-ов...
Ща как-раз закачиваю их...
...
Рейтинг: 0 / 0
Search Path, меню, форма
    #32323144
Фотография ВладимирМ
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
1. Значения SearchPath сохраняются в системном реестре (если нажал Set As Default в Options). По умолчанию это где-то в разделе

HKEY_CURRENT_USER\SoftWare\Microsoft\VisualFoxPro\8.0\Options

Если раздел недоступен для редактирования, то ничего и не сохранится. Необходимо будет при каждом запуске использовать Config.fpw или ручками прописывать пути доступа через SET PATH

2. В 8 версии если компиляция проекта происходит в Win9x, то набюлюдается масса глюков. В том числе и не цепляется иконка. Необходимо компилить проект в Win2K или в WinXP. Иногда помогает явное прописывание

_SCREEN.Icon="MyIcon.ico"

Ну и надеюсь ты в курсе, что файл иконки должен содержать 2 картинки: 16х16 и 32х32. Опять же, при компиляции в Win9x иногда помогает добавление в файл картинки 48х48

3. Если форма НЕ модальная, то можно просто сделать закрытие формы в событии Deactivate(), поскольку нажатие вне формы автоматически вызовет это событие.
...
Рейтинг: 0 / 0
Search Path, меню, форма
    #32323283
IgorProgrammer
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Гость
ВладимирМ:
1,2)
Как не печально это признавать...
Но действительно глюки из-за работы в Win9x...
В 2000 усе тип-топ...

3.) Форма не модальная... но вызывается она из модальной формы...
и Deactivate() пролетает...
Может есть еще че-то???

И что насчет менюхи подскажешь???
...
Рейтинг: 0 / 0
Search Path, меню, форма
    #32323387
Фотография ВладимирМ
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
Я не делал проект на базе As Top Level форм. Все в основном экране. As Top Level только на старте проекта для задания паролей. Поэтому не уверен насчет Deactivate.

Она точно не срабатывает? Речь идет о нажатии вне формы 3, но внутри формы 2 или формы 1. Подозреваю, что нажатие вне всех 3-х форм Fox отловить не сможет, поскольку это событие происходит не под управлением FoxPro. Придется как-то изворачиваться через API

Поскольку форма 2 у тебя модальная, то управление может быть возвращено только в нее. Может имеет смысл в Activate или GotFocus второй формы проверять факт существования 3 и закрывать ее если она есть?

По поводу объектного меню.

Разработки были уже в версии VFP6. Для примера посмотри 2 решения:

http://www.foxclub.ru/sol/index.php?act=view&id=4
http://www.foxclub.ru/sol/index.php?act=view&id=143

Лично мне это не понадобилось. Хватило штатных способов управления меню.
...
Рейтинг: 0 / 0
Search Path, меню, форма
    #32323477
IgorProgrammer
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Гость
ВладимирМ:

Я уже юзал эту менюху...
Мороки много... Толку мало...
Прейдется оставлять эту долбаную перерисовку менюхи на форме...

Нажатие, что на форме 2, что на форме 1 - ни че не дает...
Deactivate() все также в пролетает...

Activate или GotFocus формы 2 - тоже в пролете...

Не уж остается изворачиваться через API???
Пока мне даже в голову не лезет как...
...
Рейтинг: 0 / 0
Search Path, меню, форма
    #32324367
Равиль
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
Не уверен, что понял правильно :)
Если такое не потянет, ай-да в ФоксКлуб:
|>

_Screen.Visible=.F.
oStartForm = Createobject("StartTopForm")
oStartForm.Show()
Read Events

Clear All
_Screen.Visible=.T.
Cancel

Define Class StartTopForm As Form
Caption = " TopLevel форма #1"
AutoCenter = .T.
ShowWindow = 2
Height = 500
Width = 700

Add Object CloseForm As CommandButton With;
CAPTION = "Выход",;
HEIGHT = 40,;
TOP = 40,;
LEFT = 500

Add Object Form2 As CommandButton With;
CAPTION = "Модальная",;
HEIGHT = 40,;
TOP = 40,;
LEFT = 250

Procedure Form2.Click()
Public oForm2
oForm2 = Createobject("ModalForm")
oForm2.Left = 50
oForm2.Show()

Procedure CloseForm.Click()
Clear Events

Procedure Destroy()
Clear Events

Procedure Load()
Public m.Menu_Name, m.Form_Name
m.Form_name=This.Name
m.Menu_name="m_"+This.Name

Define Menu (m.Menu_name) Bar In Window (m.Form_Name)
*****************************************************
Define Pad p1 Of (m.Menu_name) Prompt "Операции "
Define Pad p2 Of (m.Menu_name) Prompt "Товары "
Define Pad p_quit Of (m.Menu_name) Prompt "Выход "
On Pad p1 Of (m.Menu_name) Activate Popup OPE
On Pad p2 Of (m.Menu_name) Activate Popup TOV
On Sele Pad p_quit Of (m.Menu_name) Do to_quit

Local m.i, m.POP
m.i=0
m.POP="OPE"
Define Popup (m.POP) SHORT Relative
m.i=m.i+1
Define Bar m.i Of (m.POP) Prompt "Создать операцию"
m.i=m.i+1
Define Bar m.i Of (m.POP) Prompt "Удалить операцию"

m.i=0
m.POP="TOV"
Define Popup (m.POP) SHORT Relative
m.i=m.i+1
Define Bar m.i Of (m.POP) Prompt "Купить товар"
m.i=m.i+1
Define Bar m.i Of (m.POP) Prompt "Продать товар"

Activate Menu (m.Menu_name) Nowait
**********************************

Enddefine


Define Class ModalForm As Form

Caption = " Модальная дочерняя форма #2"
WindowType = 1
ShowWindow = 1
Height = 400
Width = 600

Add Object Form3 As CommandButton With;
CAPTION = "Немодальная",;
HEIGHT = 40,;
TOP = 40,;
LEFT = 50

Procedure Form3.Click()
Public oForm3
oForm3 = Createobject("ModellessForm")
oForm3.Left = 100
oForm3.Show()

Procedure Load()
Define Pad (This.Name) Of (m.Menu_name) Prompt "Активна форма #2" Before P_QUIT

Procedure Unload()
Release Pad (This.Name) Of (m.Menu_Name)

Procedure Activate()
If Type("OFORM3")="O" && Если форма #3 существует - убиваем
Release OFORM3
Endif

Enddefine


Define Class ModellessForm As Form

Caption = " Немодальная дочерняя TopLevel форма #3"
AutoCenter = .T.
WindowType = 0
ShowWindow = 2
Height = 300
Width = 400

Procedure Load()
Define Pad (This.Name) Of (m.Menu_name) Prompt "Активна форма #3" Before P_QUIT

Procedure Unload()
Release Pad (This.Name) Of (m.Menu_Name)

Enddefine


Procedure to_QUIT
** грубо конечно
Clear Wind
Clear Events

ps - если Ваши формы создаются визуально, то Public ссылки на формы
можно получить в методах формы (например в Init) так:

Public Form_Handle
Form_Handle=This
...
Рейтинг: 0 / 0
Search Path, меню, форма
    #32324399
Равиль
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
Хотел вставить URL - www.foxclub.ru/ph/ получилась лабуда, извините
...
Рейтинг: 0 / 0
Search Path, меню, форма
    #32324851
IgorProgrammer
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Гость
Равиль:

Мне с менюхой надо работать как с объектом...
Я ее имя храню... и при каком-то действии перерисовую часть менюхи...

А насчет форм...
Мне надо что б на клике мыши вне формы 3, но на форме 1 или 2 или 4...
их там много может быть...
А вызывается он из модальной формы, у которой свойство AlwaysOnTop = .T.
...
Рейтинг: 0 / 0
Search Path, меню, форма
    #32325108
Равиль
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
Игорь:
автор писал:Мне с менюхой надо работать как с объектом ...
Как я Вас понимаю ... объектные меню и репорт - "но не в этой жизни", хотя некоторые мастерят свои классы, конечно :)
imho в Вашем случае одного имени для меню не достаточно без ссылки на форму, если не так - покажите пример :)
автор писал:Мне надо что б на клике мыши вне формы 3, но на форме 1 или 2
или 4... их там много может быть...
А вызывается он из модальной формы, у которой свойство AlwaysOnTop = .T.
Вот на Activate этих многих и предлагается гасить форму 3, а AlwaysOnTop зачем - только раздражать пользователей при загрузке Worda-Excelя :)
с/у Равиль :)
...
Рейтинг: 0 / 0
Search Path, меню, форма
    #32326117
IgorProgrammer
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Гость
Равиль:
На одной из форм есть оле-компонент...
Когда я его гашу... то клика на нем не происходит...
Соответственно актив форм пролетает...

Что с этим делать???

с/у Игорь...
...
Рейтинг: 0 / 0
Search Path, меню, форма
    #32326790
Равиль
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
автор писал:На одной из форм есть оле-компонент...
Когда я его гашу... то клика на нем не происходит...
Соответственно актив форм пролетает...
:) Вы хотите сказать, что не происходит актив формы при активации оле-компонента, или наоборот оле-компонент находится на "гасимой" форме - не совсем понятен вопрос ... а что за компонент ?
...
Рейтинг: 0 / 0
15 сообщений из 15, страница 1 из 1
Форумы / FoxPro, Visual FoxPro [игнор отключен] [закрыт для гостей] / Search Path, меню, форма
Найденые пользователи ...
Разблокировать пользователей ...
Читали форум (0):
Пользователи онлайн (0):
x
x
Закрыть


Просмотр
0 / 0
Close
Debug Console [Select Text]