Как сделать 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(), и т.д.) и выполнить следующий код:
где hWnd - дескриптор окна, которое будет обрабатывать команду меню, hMenu - дескриптор меню, x и y - позиция курсора. Для подробностей смотрите Win32 SDK Help по функции TrackPopupMenuEx. Взято из FAQ: Как сделать Pop-Up меню при щелчке иконки в Sys tray, можно обработать сообщение WM_RBUTTONDOWN, получить позицию курсора в момент события, создать Pop-Up меню и вызвать функцию TrackPopupMenuEx для его отображения. Комментарии и вопросыПолучайте свежие новости и обновления по Object Pascal, Delphi и Lazarus прямо в свой смартфон. Подпишитесь на наш Telegram-канал delphi_kansoftware и будьте в курсе последних тенденций в разработке под Linux, Windows, Android и iOS Материалы статей собраны из открытых источников, владелец сайта не претендует на авторство. Там где авторство установить не удалось, материал подаётся без имени автора. В случае если Вы считаете, что Ваши права нарушены, пожалуйста, свяжитесь с владельцем сайта.
|
||||||
©KANSoftWare (разработка программного обеспечения, создание программ, создание интерактивных сайтов), 2007 |