在 Delphi 10.4.2 32 位 VCL 应用程序中,当用户(左或右)单击TMemo
控件(处于ReadOnly
模式)时,我需要执行不同的操作:
procedure TForm1.Memo1MouseDown(Sender: TObject; Button: TMouseButton; Shift: TShiftState; X, Y: Integer);
begin
if Button = mbLeft then
DoAction1
else if Button = mbRight then
DoAction2;
end;
DoAction2
包括调用一个特定的对话框。
但是,当我右键单击 Memo 控件时,会TMemo
显示控件的本机上下文菜单,并且DoAction2
不会执行:
我尝试使用以下代码停用备忘录控件的右键单击上下文菜单:
Memo1.OnContextPopup := nil;
但它不起作用:右键单击备忘录控件时仍会显示上下文菜单。
那么如何在右键单击备忘录控件时停用本机上下文菜单并执行我的操作?