Qt - 专注于失去焦点的应用程序?

时间:2011-06-03 17:31:29

标签: qt focus

我想知道即使失去焦点,是否可以专注于我的应用程序?

我的应用程序正在运行一个线程,一旦我退出它,我想将我的窗口应用程序带到前面 我已经尝试了以下代码,它可以专注于我想要的小部件,但是如果你使用的是Firefox,它只会在任务栏中闪现一次,并且不会聚焦:(

this->activateWindow();
this->show();
this->setFocus();

编辑:这样做会,但我不希望我的应用程序保持在最顶层...如果我删除该标志,它会失去焦点= /

this->setWindowFlags(Qt::WindowStaysOnTopHint);
this->activateWindow();
this->show();
this->setFocus();

提前感谢您的回答。

1 个答案:

答案 0 :(得分:0)

this->setWindowState(Qt::WindowActive);
它对我有用。 (Qt 4.8,Windows 7,MinGW 4.4)

编辑:我发现这通常仅在窗口当前最小化时才有效。所以,如果它不起作用,请尝试添加

this->setWindowState(Qt::WindowMinimized);

之前。