如何一个按纽左键和右键分别打开2个菜单?(100分)

  • 主题发起人 主题发起人 wenqy
  • 开始时间 开始时间
W

wenqy

Unregistered / Unconfirmed
GUEST, unregistred user!
有一个按纽、2个菜单,如何写代码实现在一个按纽上左键和右键分别各打开一个菜单?
 
在OnMouseDown事件中判断Button是左还是右,然后调用不同的PopupMenu.Popup方法
 
procedure TForm1.Button1MouseDown(Sender: TObject;
Button: TMouseButton;
Shift: TShiftState;
X, Y: Integer);
var
vPoint: TPoint;
begin
vPoint.X := TButton(Sender).Left;
vPoint.Y := TButton(Sender).Top + TButton(Sender).Height;
vPoint := ClientToScreen(Point(vPoint.X, vPoint.Y));
case Button of
mbLeft : PopupMenu1.Popup(vPoint.X, vPoint.Y) ;
mbRight: PopupMenu2.Popup(vPoint.X, vPoint.Y);
end;
end;
 
谢谢,晚上才能试!
 
if mbleft then
........
 
procedure TForm1.Button1MouseDown(Sender: TObject;
Button: TMouseButton;
Shift: TShiftState;
X, Y: Integer);
var
vPoint: TPoint;
begin
GetCursorPos(vPoint);
case Button of
mbLeft : PopupMenu1.Popup(vPoint.X, vPoint.Y) ;
mbRight: PopupMenu2.Popup(vPoint.X, vPoint.Y);
end;
end;


--------------------------------------------
更多问题,尽在http://www.cnhup.net/bbs/
 
后退
顶部