非模态对话框的onInitDialog只会执行一次,如果每次打开时都响应,则需要增加OnWndMsg来响应消息,示意代码如下:
BOOL MyDlg::OnWndMsg(UINT message,WPARAM wParam,LPARAM lParam,LRESULT* pResult)
{
if(message == WM_SHOWWINDOW && wParam
{
//do your things
}
return CDialogEx::OnWndMsg(message,wParam,lParam,pResult);
}