如何屏蔽鼠标右键?(50分)

  • 主题发起人 主题发起人 inature
  • 开始时间 开始时间
I

inature

Unregistered / Unconfirmed
GUEST, unregistred user!
如何屏蔽鼠标右键?
小弟是个初学者,对于这个问题,还望各位Delphi大虾不吝赐教!!!
 
类似的问题本论坛有多个解释,请查找一下!
总结一下,有2种:
1、用鼠标的钩子函数;
2、截获Windows的消息(Message);
 
对Jams的解答先谢了。
查了一些解释,还是糊涂。
毕竟本人还是支菜bird,能不能paste个例子,只要右键。
不胜感激!
 
比较简单的办法是,响应Delphi的OnMouseDown事件,其定义如下:
type
TMouseEvent = procedure (Sender: TObject;
Button: TMouseButton;
 
        Shift: TShiftState;
X, Y: Integer) of object;
property OnMouseDown: TMouseEvent;
而TMouseButton的定义是这样的:
type TMouseButton = (mbLeft, mbRight, mbMiddle);
当探测到TMouseButton为mbRight,不执行任何语句,既可。
其实这种方法还可以屏蔽鼠标左键和中键,详细情况见Delphi的帮助。

 
在已答问题中检索Hook,可能挂接wh_getmessage钩子比较好。
 
多人接受答案了。
 
后退
顶部