我设计了两个按钮,
OnButton1{ PostMessage(WM_BUTTON1); }
OnButton1{ PostMessage(WM_BUTTON2); }//WM_BUTTON1消息的处理
Sleep(10000); //处理10秒//WM_BUTTON2消息的处理
Sleep(100); //处理0.1秒如果点击button1 十秒钟内点击button2无法响应,非要等WM_BUTTON1的事件处理完才能处理消息WM_BUTTON2我的问题是,能不能通过某种办法,比如把WM_BUTTON2的优先级设高些,使得WM_BUTTON1在阻塞的情况下能先处理WM_BUTTON2。或者还有别的方法?
请各位高手支支招!
OnButton1{ PostMessage(WM_BUTTON1); }
OnButton1{ PostMessage(WM_BUTTON2); }//WM_BUTTON1消息的处理
Sleep(10000); //处理10秒//WM_BUTTON2消息的处理
Sleep(100); //处理0.1秒如果点击button1 十秒钟内点击button2无法响应,非要等WM_BUTTON1的事件处理完才能处理消息WM_BUTTON2我的问题是,能不能通过某种办法,比如把WM_BUTTON2的优先级设高些,使得WM_BUTTON1在阻塞的情况下能先处理WM_BUTTON2。或者还有别的方法?
请各位高手支支招!
解决方案 »
- 借宝地转个帖子^_^MFC程序利用控制台输出调试信息(
- 在多文档中如何使子窗口的大小随主窗口的大小改变而改变?
- 如何做一个“正在处理。。。”对话框?
- VC连接SQL问题!
- 关于窗口的问题
- 很简单的问题。很简单啊~~~!··#!·¥高手来一下就好了!
- VC6.0中如何能否处理CComboBox的双击事件?
- 谁能告诉我户口有多重要!--应届毕业生的烦恼
- 如何在CRichEditCtrl对象中显示文本?
- 关于SafeArray的释放
- 请问怎样在我程序的WMPlayer控件里播放“c:\\音乐”目录里的所有文件
- 做程序安装包的时候,一般是否应该包含MSI Engine? 如果包含的话安装包就要大2M!
你只能
OnButton1{ PostMessage(WM_BUTTON2); }
OnButton1{ PostMessage(WM_BUTTON1); }我建议你把处理做成线程,任何一个消息在处理的过程中遭遇了阻塞,那么,该窗口将不能处理任何消息,所以,WM_BUTTON1一旦被阻塞,你的所有消息都没用了,一定要等它返回才成.
在主窗口
OnButton1{
DIALOG1 *pdlg1 = new DIALOG1;
pdlg1->Create(IDD_DIALOG1);
pdlg1->ShowWindow(SW_SHOW);
} //创建子窗口一
OnButton2{ 方法同上 } //创建子窗口二在子窗口一
::PostMessage(hdlg2,WM_START,0,0) //发一个启动消息给窗口二在子窗口二关联一个消息处理函数
OnStart(WPARAM wparam,LPARAM lparam)
{
处理...
}调试时我在OnStart里打了断点,发现子窗口一发消息后 窗口二并没有收到,请问是怎么一回事?