powered by simpleCommunicator - 2.0.41     © 2025 Programmizd 02
Форумы / FoxPro, Visual FoxPro [игнор отключен] [закрыт для гостей] / Создание меню в форме
6 сообщений из 6, страница 1 из 1
Создание меню в форме
    #38916179
Ирыч
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Гость
Здравствуйте!
Создаю "пользовательское меню" yf ajhvt ручным способом, с помощью Label и Popup к ней. Использовать DEFINE MENU не могу, так как не устраивает "As Top Level".
При фокусе на Label появляется Popup.
Вопрос: как закрыть появившееся меню, не выбираю никакой пункт, просто закрыть (скрыть) пользовательское меню при потере фокуса (как пример фокус мышью переходит в соседний Label).

Спасибо!
...
Рейтинг: 0 / 0
Создание меню в форме
    #38917669
alextashk
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
Ирыч,

Во всех остальных объектах провести проверку существования popup
И убития его, если обнаружили
...
Рейтинг: 0 / 0
Создание меню в форме
    #38917747
Ирыч
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Гость
А на каком методе? Этот popup перехватывает фокус на себя и никак не отпускает...Мышь уже на другом объекте, а активный фокус все равно остается на popup (
...
Рейтинг: 0 / 0
Создание меню в форме
    #38918733
alextashk
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
Mouseover
...
Рейтинг: 0 / 0
Создание меню в форме
    #38920560
Фотография ВладимирМ
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
ИрычПри фокусе на Label появляется Popup.
Это как? Разве у объекта Label есть метод получения фокуса? Что Вы подразумеваете под термином "фокус на Label"? Какое событие?

Если есть событие "фокуса", то, очевидно, должно быть соответствующее событие "потери фокуса". Например, для объекта TextBox это методы gotFocus/LostFocus. Вот событие потери фокуса и используйте. Объекту TextBox или CommandButton при помощи настроек вполне можно придать внешний вид Label и использовать методы gotFocus/LostFocus для активации/деактивации меню

Кроме того, если активировать POPUP без опции NOWAIT, то он и сам с успехом закроется при потере фокуса. Хотя, конечно, в этом случае симуляция меню будет не вполне корректная.

PS: Для FoxPro "стандартом" является меню в главном окне приложения. Для сопровождения подчиненных окон добавляется/удаляется пункт все в том же главном окне приложения. А в подчиненных окнах меню нет. Совсем. Именно на такой интерфейс FoxPro и рассчитан. Любой другой интерфейс потребует дополнительных усилий от программиста. Иногда (как в Вашем случае) достаточно существенных.
...
Рейтинг: 0 / 0
Создание меню в форме
    #38920645
Ирыч
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Гость
Спасибо Владимир! Вы как всегда даете самый исчерпывающий ответ!
Использую Label, у него нет Gotfocus/Lostfocus... под "потерей фокуса" я предполагала когда визуально мышь уходит с меню и появляется над следующим label (использую методы MouseEnter и MouseLeave). Заказчик уперся именно в меню в форме. Поэкспериментирую с заменой label на другие элементы, но похоже popup не собирается сам закрываться без nowait (
...
Рейтинг: 0 / 0
6 сообщений из 6, страница 1 из 1
Форумы / FoxPro, Visual FoxPro [игнор отключен] [закрыт для гостей] / Создание меню в форме
Целевая тема:
Создать новую тему:
Автор:
Закрыть
Цитировать
Найденые пользователи ...
Разблокировать пользователей ...
Читали форум (0):
Пользователи онлайн (0):
x
x
Закрыть


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