怎样得到按钮的click事件(100分)

  • 主题发起人 主题发起人 LFCZ
  • 开始时间 开始时间
L

LFCZ

Unregistered / Unconfirmed
GUEST, unregistred user!
怎样得到另一软件中按钮的click事件,可能是用鼠标单击,或者得到焦点后用键盘操作(比如用回车键,空格键),或者在其界面上的另外控件上按回车键,也可以触发按钮的click事件。按钮的句柄已得到。
 
既然得到了按钮的句柄,那么可以给它发消息啊.
 
是在后台监控的。<br> &nbsp; &nbsp;是要得到它的事件,不管在那界面上是怎样操作的,只要触发按钮的click事件,我就要得到它的事件。
 
babibean已经给了答案了
 
发送什么消息
 
类似这样: <br>if (message.LParam = WM_LBUTTONDBLCLK) then
 
我是要得到按钮的click事件,不是向按钮发送click事件,向它发送不是变成我去操作<br>按钮了吗。
 
先得到消息(BtnHandle为那个按钮的Handle)<br>GetMessage(Msg,BtnHandle,0,0);<br>然后判断:<br>if (Msg.LParam = WM_LBUTTONUP) then &nbsp;<br>begin<br> //进行你的操作<br>end;
 
那个按钮在click的时候,也会发消息,你在这个时候截获它。
 
怎么截获,能贴出源码吗?
 
上面不是给出来了吗! 声明一下相关变量就行了。
 
没有WM_LBUTTONCLK
 
上面的程序只是对鼠标的单击起作用,如果是用其它方式触发click事件就不起作用了。
 
鼠标单击 应该是在释放的时候响应事件吧 ? &nbsp;WM_LBUTTONUP<br>或者WM_COMMAND<br><br>不过这个消息是不是应该是给按钮的父窗口发的,那就是应该在其父窗口中处理这个消息
 
用钩子可以吗
 
我用的就是钩子,钩子中我响应WM_LBUTTONUP和WM_KeyUp事件,其中WM_LBUTTONUP可以响应到,WM_KeyUp只有鼠标在按钮上才响应,鼠标移开后就不响应了,不管焦点是不是在按钮上。
 
多人接受答案了。
 
后退
顶部