Выпадание контекстного меню возле нужного элемента управленияDelphi , Компоненты и Классы , МенюВыпадание контекстного меню возле нужного элемента управления
Автор: Дремучий { **** UBPFD *********** by delphibase.endimus.com **** >> Выпадание popup-меню возле нужного TWinControl~a можно по клику на контрол(обычно какая-то кнопка) или по событию вызывать popup-меню возле нужного контрола. Зависимости: SysUtils Автор: Дремучий, sopilko@yahoo.com Copyright: нечто похожее видел в RxLib Дата: 08 мая 2002 г. ***************************************************** } procedure Popup(Sender: TWinControl; pm: TPopupMenu); var xPoint: TPoint; begin GetParentForm(TWinControl(Sender)).SendCancelMode(nil); pm.PopupComponent := TWinControl(Sender); xPoint := Point(-1, TWinControl(Sender).Height); with TWinControl(Sender).ClientToScreen(xPoint) do pm.Popup(x, y); end; // Пример использования: // нажатие на кнопку btnResplan procedure TfmResplan.btnResplanPrintClick(Sender: TObject); begin Popup(Sender, pmPrint); end; Перевод на русский язык: Этот фрагмент кода на Delphi демонстрирует, как реализовать контекстное меню (попап-меню) вблизи конкретного контрола при его клике или срабатывании события. Процедура Вот разбивка на части кода:
Вместо этого можно использовать метод Вот обновленная версия кода, использующая свойства
В этой версии всплывающее меню позиционируется в центре контрола В статье описывается способ вызова контекстного меню (popup-меню) рядом с необходимым элементом управления в приложении на языке Delphi. Комментарии и вопросыПолучайте свежие новости и обновления по Object Pascal, Delphi и Lazarus прямо в свой смартфон. Подпишитесь на наш Telegram-канал delphi_kansoftware и будьте в курсе последних тенденций в разработке под Linux, Windows, Android и iOS Материалы статей собраны из открытых источников, владелец сайта не претендует на авторство. Там где авторство установить не удалось, материал подаётся без имени автора. В случае если Вы считаете, что Ваши права нарушены, пожалуйста, свяжитесь с владельцем сайта.
|
||||
©KANSoftWare (разработка программного обеспечения, создание программ, создание интерактивных сайтов), 2007 |