Карта сайта Kansoftware
НОВОСТИУСЛУГИРЕШЕНИЯКОНТАКТЫ
KANSoftWare

Как сделать Pop-Up меню при щелчке иконке в Sys tray?

Delphi , Рабочий стол , TrayBar

Как сделать Pop-Up меню при щелчке иконке в Sys tray?

Многие программы показывают Pop-Up меню при щелчке на их иконке,  помещенной на Tray, как этого добиться ?

Вы  должны  обрабатывать сообщение, указанное вами при добавлении   иконки  на Tray. При значении (UINT)lParam, равном WM_RBUTTONDOWN  (это обычно дял Pop-Up меню по правой кнопке), или любому другому  необходимому   вам,  вы  должны  вызовом  функции  GetCursorPos()  получить  позицию  курсора в момент события (вряд ли пользователь     успеет  убрать  мышь  за время обработки сообщения, особенно если   он ожидает меню), получить вескриптор Pop-Up меню одним из многих  способов  (LoadMenu(),  GetSubMenu(),  CreateMenu(),  и  т.д.)  и    выполнить следующий код:       

Code:

SetForegroundWindow(hWnd);
TrackPopupMenuEx(hMenu,TPM_HORIZONTAL|TPM_LEFTALIGN,x, y,hWnd, NULL);
DestroyMenu(hMenu);
PostMessage(hWnd,WM_USER,0,0);   

где  hWnd  -  дескриптор окна, которое будет обрабатывать команду  меню, 

hMenu - дескриптор меню,

x  и  y  -  позиция  курсора.

Для подробностей смотрите Win32 SDK Help по функции TrackPopupMenuEx.

Взято из FAQ:

http://blackman.km.ru/myfaq/cont4.phtml]http://blackman.km.ru/myfaq/cont4.phtml

Как сделать Pop-Up меню при щелчке иконки в Sys tray, можно обработать сообщение WM_RBUTTONDOWN, получить позицию курсора в момент события, создать Pop-Up меню и вызвать функцию TrackPopupMenuEx для его отображения.


Комментарии и вопросы

Получайте свежие новости и обновления по Object Pascal, Delphi и Lazarus прямо в свой смартфон. Подпишитесь на наш Telegram-канал delphi_kansoftware и будьте в курсе последних тенденций в разработке под Linux, Windows, Android и iOS




Материалы статей собраны из открытых источников, владелец сайта не претендует на авторство. Там где авторство установить не удалось, материал подаётся без имени автора. В случае если Вы считаете, что Ваши права нарушены, пожалуйста, свяжитесь с владельцем сайта.


:: Главная :: TrayBar ::


реклама


©KANSoftWare (разработка программного обеспечения, создание программ, создание интерактивных сайтов), 2007
Top.Mail.Ru

Время компиляции файла: 2024-08-19 13:29:56
2024-11-21 14:20:21/0.0048348903656006/1