如何将本程序的鼠标动作全部传给被其覆盖在下面的窗体(可能是其它程序或desktop)呢? 当然不是透明窗体,也不是在win2000下,应该不是太难吧?300分求

  • 主题发起人 主题发起人 yy2001
  • 开始时间 开始时间
Y

yy2001

Unregistered / Unconfirmed
GUEST, unregistred user!
如何将本程序的鼠标动作全部传给被其覆盖在下面的窗体(可能是其它程序或desktop)呢? 当然不是透明窗体,也不是在win2000下,应该不是太难吧?300分求助 (50分)<br />请多多指教--分不够继续加200分
 
这个其实实现起来不那么容易哦<br>要用 Hook 钩住 Ctrl 事件 和 鼠标事件<br>
 
在 Application的OnMessage中处理。
 
太简单了:<br>&nbsp; TForm1 = class(TForm)<br>&nbsp; ...<br>&nbsp; private<br>&nbsp; &nbsp; procedure WMNCHitTest(var Message: TMessage); message WM_NCHITTEST;<br>&nbsp; ....<br>&nbsp; end<br><br>procedure TForm1.WMNCHitTest(var Message: TMessage);<br>begin<br>&nbsp; inherited;<br>&nbsp; message.result := HTTRANSPARENT;<br>end;
 
不用HOOK的,俺作过,给俺发邮件,俺给你
 
TXYQBF_GXX@163.COM
 
那如何检测鼠标有没有单击本窗体以外的地方呢?
 
&nbsp; 万分感谢各位的热心帮助!<br>&nbsp; &nbsp;to Pearl.<br>&nbsp; &nbsp;您的方法我试过了,本窗体不再接收鼠标动作,其下的窗体也没有反映,<br>能不能解释一下,多谢!<br>&nbsp; &nbsp; to mckz <br>&nbsp; &nbsp; 请继续指教,等待回音!
 
用sendmessage发送鼠标消息可行吗?
 
俺发了一个代码给谁忘记了!
 
多人接受答案了。
 
后退
顶部