接刚才的在checklistbox上单击右键弹出菜单的问题!!!(50分)

  • 主题发起人 主题发起人 qwerpoiu10
  • 开始时间 开始时间
Q

qwerpoiu10

Unregistered / Unconfirmed
GUEST, unregistred user!
我在“鼠标抬起”的事件中的代码:
procedure TForm1.CheckListBox1MouseUp(Sender: TObject;
Button: TMouseButton;
Shift: TShiftState;
X, Y: Integer);
var
mousept:Tpoint;
begin
GetCursorPos(mousept);
if button=mbRight then
PopupMenu1.Popup(mousept.X,mousept.Y);
end;

当点击右键弹出菜单后,此时再在旁边点击左键,按理说菜单应该消失,但我按了左键后,
菜单却在左键点击的位置又显示出来了,再次在旁边按下左键,菜单才消失!
这是为什么,应该怎样解决?
(没有给左键加任何处理事件,我新建了一个应用程序试验,也有此现象!)
 
if button=mbleft then
exit
 
你根本不需要处理鼠标右击事件。
直接在属性编译器中设置CheckListBox1 的 PopupMenu 属性为 PopupMenu1
 
接受答案了.
 
后退
顶部