Delphi World - Выпадание контекстного меню возле нужного элемента управления
Delphi World - это проект, являющийся сборником статей и малодокументированных возможностей  по программированию в среде Delphi. Здесь вы найдёте работы по следующим категориям: delphi, delfi, borland, bds, дельфи, делфи, дэльфи, дэлфи, programming, example, программирование, исходные коды, code, исходники, source, sources, сорцы, сорсы, soft, programs, программы, and, how, delphiworld, базы данных, графика, игры, интернет, сети, компоненты, классы, мультимедиа, ос, железо, программа, интерфейс, рабочий стол, синтаксис, технологии, файловая система...
Выпадание контекстного меню возле нужного элемента управления

Автор: Дремучий
WEB-сайт: http://delphibase.endimus.com

{ **** 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 World © Выпуск 2002 - 2017
Автор проекта: Эксклюзивные курсы программирования