问:如何捕获表明所有gui元素都准备就绪的事件

7 c++ events qt qt4

我想知道是否有可能捕获所有Qt对象初始化和准备好时生成的事件?

似乎有些事情无法在window的构造函数中完成.它们在插槽实现中工作正常.

例如,当我想访问我的应用程序的根窗口时,我会这样做

// in *.h
MainWindow* rootWindow

// in *.cpp
rootWindow = qobject_cast<MainWindow *>(this->window());
Run Code Online (Sandbox Code Playgroud)

如果在构造函数中完成,我就不能使用rootWindow对象 - 它会导致运行时错误.

没有相关的插槽可供实施.并且在QMainWindow类中创建事件不是虚拟的.

感谢帮助 :)

Arn*_*nce 9

您可以使用单次计时器.在主窗口类中,定义一个名为say的插槽函数appReady().在构造函数中,创建并连接单个计时器使用QTimer::singleShot(0, this, SLOT(appReady()));此计时器应在事件循环启动并运行时立即触发,并且没有更多的启动事件待处理.