【发布时间】:2010-02-18 10:22:09
【问题描述】:
我已经用 C++(Windows XP、visual c++ 2008)构建了一个 GUI 界面。在那里您可以配置一些参数,当我单击“确定”按钮时,将启动一个静默应用程序(并使用设置的值)。当我这样做时,如果您切换到其他窗口,GUI 会冻结甚至消失(它仍然存在,但您只能看到一个空白区域),当其他应用程序完成时,GUI 再次工作。
这是正确的行为,我不希望用户能够编辑字段......但是当你看不到 GUI 时它有点难看。有人知道切换到其他窗口并在切换回来时能够看到 GUI 的简单方法吗?
提前致谢
已编辑:
嗨,我试过这样做,但问题是要在后台运行应用程序,我有一个使用 CreateProcess 的函数。所以 GUI 冻结的两种方式:如果我创建一个创建进程的线程,以及如果我直接创建进程。
然后我等待过程完成:
if (!CreateProcess(NULL, Args, NULL, NULL, FALSE, CREATE_NEW_CONSOLE, NULL, NULL, &StartupInfo, &ProcessInfo))
{
返回 GetLastError();
}
WaitForSingleObject(ProcessInfo.hProcess, INFINITE);
if(!GetExitCodeProcess(ProcessInfo.hProcess, &rc))
rc = 0;
有什么想法吗?
【问题讨论】:
标签: user-interface visual-c++ freeze silent