富翁们帮帮忙!(消息处理)(100分)

  • 主题发起人 主题发起人 zhzdl
  • 开始时间 开始时间
Z

zhzdl

Unregistered / Unconfirmed
GUEST, unregistred user!
我应用程序得到焦点或失去焦点时处理一些过程,要怎么捕捉消息才对,下面的方法为什么<br>行啊?谢谢大家了!<br>procedure TMainFrm.DoActivateMessage(var msg: TWMActivate);<br>begin<br>&nbsp;inherited;<br>&nbsp;case msg.Active &nbsp;of<br>&nbsp; WA_ACTIVE: close;<br>&nbsp; WA_CLICKACTIVE: &nbsp;Close;<br>&nbsp; WA_INACTIVE: &nbsp;Close;<br>&nbsp;end;<br>end;
 
用case Msg.Message of 试试!<br>另外在TMainFrm的FormCreate事件中要加入Application.OnMessage := DoActivateMessage;<br>随手改的,没测试!<br>procedure TMainFrm.DoActivateMessage(var msg: TWMActivate ;var Handled: Boolean);<br>begin<br>&nbsp;inherited; &nbsp; //该句可否不要?<br>&nbsp;case msg.Message of<br>&nbsp; WA_ACTIVE: close;<br>&nbsp; WA_CLICKACTIVE: &nbsp;Close;<br>&nbsp; WA_INACTIVE: &nbsp;Close;<br>&nbsp;end;<br>end;<br>
 
不是有OnEnter,onExit属性吗?
 
我试过可以的啊。你的函数声明是否为<br>procedure DoActivateMessage(var msg: TWMActivate); message WM_ACTIVE;<br>如果是不可能收不到消息,何况得到焦点和失去焦点在TForm里已经有事件了。<br>OnActivate和OnDeactivate。
 
详细一点!
 

Similar threads

后退
顶部