一 主对话框与子对话框
1.在主对话框头文件添加消息响应:
#define WM_MyMessage (WM_USER+100)//定义响应1多定义的话,变量名称也要改变。
2在主对话框头文件的protect里(在其他地方可能会出现debug)添加响应函数:
afx_msg LRESULT STX_POST(WPARAM wParam, LPARAM lParam);//
3.在BEGIN_MESSAGE_MAP(GZCSXS, CDialog)
END_MESSAGE_MAP()之间添加消息ON_MESSAGE(WM_MyMessage,STX_POST)//定义响应3
4.添加在主对话框中添加响应函数LRESULT GZCSXS::POST(WPARAM w, LPARAM l)
{
if (w == 0)
{
SetDlgItemText(IDC_FYSX, fyjjqy.m_fyjjqy_sx);
SetDlgItemText(IDC_FYXX, fyjjqy.m_fyjjqy_xx);
}
return 0;
}
ps:要在主对话框中设置一个主对话框的指针
KJHDlg *Pmain;
和子对话框的
WKJS wkjs
然后在子对话框中添加代码 extern KJHDlg *Pmain;
在子对话框需要响应的地方Pmain->PostMessage(WM_MyMessage, 0, 0);
二 2个子对话框的对话
步骤和上面一样,在响应的地方用子对话框定义的变量
JJ.PostMessage(WM_MyMessage, 0, 0);
在mfc自定义窗口控件里,定义相应的消息要在相应的类里添加,不需要再调用主对话框了,相当于与主对话框相独立。比如 Custom Control
控件,就是自定义的类。