Деактивация заданного по умолчанию контекстного меню
Мы можем поместить свой компонент TPopupMenu и назначить это меню на свойство компонентов, чье меню мы хотим отключить.
Есть процедура, которая использует RTTI и отключает всплывающее меню на управлении.
Uses TypInfo; procedure DisablePopUp(AControl: TWinControl) ; var j : integer; pm : TPopupMenu; begin pm := TPopupMenu.Create(AControl) ; for j := 0 to AControl.ControlCount-1 do if IsPublishedProp(AControl.Controls[j], 'PopupMenu') then SetObjectProp(AControl.Controls[j], 'PopupMenu', pm) ; end;
Использование:
DisablePopUp(Form1) ;
или
DisablePopUp(Panel1) ;
Комментарии