非模态对话框消息问题
放个图形象些
这是一个非模态对话框,对象指针保存在mainframe里,我想在这上面响应鼠标移动、静态文本控件点击等事件,无奈没有成功。
第一次写非模态对话框,不知个中奥妙,望大神们写得详细一点
顺便说一下,创建这个窗口的时候它抢去了主窗口的焦点,怎样让它不获取焦点呢?又或者鼠标移到里面去才获取焦点?先谢谢了~
[解决办法]
while(GetMessage(&stMsg,NULL,0,0))
{
if(!IsDialogMessage(hDlg,&stMsg))
{
TranslateMessage(&stMsg);
DispatchMessage(&stMsg);
}
}
[解决办法]
CStatic控件勾上Notify(或者设置SS_NOTIFY属性),然后再添加STN_CLICKED点击通知。
[解决办法]
创建的时候记住主窗口的句柄,创建完成后用你记住的句柄调用SetForegroundWindow,和SetActiveWindow函数可以时主窗口获得焦点,CStatic 获得单击消息楼上正解
[解决办法]
用这两个函数确实可以去焦点,但是当点击对话框窗体的时候就没法不让对话框获得焦点了,网上说重载killfocus之类的函数响应获取焦点或失去焦点,但是费墨台对话框没有消息循环又怎么响应呢?