非模态实现代码如下:
CXXXXDlg *dlg = new CXXXXDlg;
dlg-> Create(IDD_XXXX_DIALOG, NULL);
dlg-> ShowWindow(SW_SHOW);
解决办法是:
建立非模式对话框时Create的第二个参数用GetDesktopWindow(),
m_pDlg-> Create(IDD_,GetDesktopWindow());
现在有出现了一个问题:系统的任务栏上出现了非模式对话框的图标,好像该对话框和父窗口是两个应用。解决的办法是:
1 定义对象 CWnd *m_pWnd,该对象的父窗口为GetDesktopWindow,设置该对象ShowWindow(SW_HIDE);
2 将非模式对话框的父窗口设置为m_pWnd。
CXXXXDlg *dlg = new CXXXXDlg;
dlg-> Create(IDD_XXXX_DIALOG, NULL);
dlg-> ShowWindow(SW_SHOW);
解决办法是:
建立非模式对话框时Create的第二个参数用GetDesktopWindow(),
m_pDlg-> Create(IDD_,GetDesktopWindow());
现在有出现了一个问题:系统的任务栏上出现了非模式对话框的图标,好像该对话框和父窗口是两个应用。解决的办法是:
1 定义对象 CWnd *m_pWnd,该对象的父窗口为GetDesktopWindow,设置该对象ShowWindow(SW_HIDE);
2 将非模式对话框的父窗口设置为m_pWnd。