确定Qt App是否具有UI

时间:2011-09-13 13:21:31

标签: qt user-interface

我正在开发一个使用Qt的大型项目。该应用程序可以选择在GUI或批处理模式下运行,我无法访问该信息。

但是,我确实可以访问QApp。有没有办法通过Qt了解UI是否存在或已经初始化?

2 个答案:

答案 0 :(得分:2)

QApplication有一个topLevelWidgets()函数,可返回顶级窗口小部件列表。您可以检查该列表是否为空。

答案 1 :(得分:0)

对于批处理模式,您是否考虑过使用QCoreApplication代替QApplication?您不应该将QApplication用于非GUI应用程序。

如果你这样做,qApp应该返回一个指向QCoreApplication(非GUI)或QApplication(GUI)的指针,你可以在运行时检查它(如果你需要)和dynamic_cast。