为什么我的Qt C ++应用程序在GNOME中的“MyApplication就绪”通知后面启动?

时间:2015-10-23 18:40:46

标签: qt gnome

我在使用KDE很长一段时间后尝试过GNOME。

我正在编写一个C ++ qt应用程序。如果我使用

从控制台运行它
$> ./my_application

- 而不是应用程序主窗口,我在顶部收到一条说明

的通知
My Application
"My Application" is ready

当我点击它时,我实际上得到了我的程序。

有趣的是,如果我尝试使用其他程序,例如

$> kate

它只是正常启动,没有此通知。

我的程序核心代码基本上就是这个

int main (int argc, char ** argv) {
    QApplication app (argc, argv);
    SubclassOfQMainWindow main_window;
    return app .exec ();
}

为什么我的程序会在此通知后面启动而其他人正常启动?

1 个答案:

答案 0 :(得分:0)

不是一个真正的答案,特别是在我的系统上没有尝试你的应用程序,但是......如果已经有一些被视为模态的东西,我已经看到了类似的对话行为。在这种情况下,m_searchWindow是一个对话框,我希望保持打开状态,但它不是模态的。请注意,我必须设置WindowStaysOnTopHint,或者它位于显示它的模式对话框后面。

m_searchWindow->setWindowFlags(m_searchWindow->windowFlags() | Qt::WindowStaysOnTopHint);
m_searchWindow->show();
m_searchWindow->raise();
m_searchWindow->activateWindow();