【发布时间】:2014-05-14 15:02:54
【问题描述】:
我使用CWnd::DoModal 函数在 MFC 中创建对话窗口。
窗口在 CWinApp::OnIdle() 中实例化
CPatientFile pf;
pf.DoModal();
当DoModal 函数返回时,焦点不会返回到主窗口。
我尝试手动设置焦点
AfxGetMainWnd()->SetFocus();
还尝试将主窗口设置为前台或活动窗口。
通常我有触摸屏,所以当我关闭对话框时,我需要按下主窗口上的按钮才能让它工作。
那么正确的做法是什么?
【问题讨论】:
-
那么谁才是焦点?
-
您是否考虑过在
DoModal之前缓存焦点窗口,然后在它返回后恢复它? -
这个选项也被选中了:(
-
你能创建一个重现问题的 SSCCE 吗?