C++ Qt应用程序是否存在onShow()函数?

C++ Qt应用程序是否存在onShow()函数?,c++,qt,C++,Qt,我的目标是隐藏()一个窗口1,然后显示()另一个窗口2 但是,当我想以后隐藏window2时,我想恢复window1并让它自动调用几个函数来更新自己 是否存在onShow()函数或类似的函数?您应该从窗口类派生并使用重载,我想您正在寻找信号 不,这样的信号不存在。您可以通过从QWidget中对窗口进行子类化并重新实现QWidget::showEvent()事件处理程序来创建一个,您可以在其中发出自定义信号 对于QDialog派生的窗口,可以使用accepted()/rejected()/fini

我的目标是隐藏()一个窗口1,然后显示()另一个窗口2

但是,当我想以后隐藏window2时,我想恢复window1并让它自动调用几个函数来更新自己


是否存在onShow()函数或类似的函数?

您应该从窗口类派生并使用重载,我想您正在寻找信号

不,这样的信号不存在。您可以通过从QWidget中对窗口进行子类化并重新实现QWidget::showEvent()事件处理程序来创建一个,您可以在其中发出自定义信号

对于QDialog派生的窗口,可以使用accepted()/rejected()/finished()信号


不过,您的描述听起来有点像一个向导。看看QWizard,也许它对您有帮助。

此window1可从两个窗口访问:window2和window3。我只想在window2 show()启用此功能时使用此功能,而不是window3。我该怎么做呢?您在这个事件上的窗口可以发出一个带有标识器的信号,并且可以有一个侦听器来显示propper窗口,称为StateManager或WindowManager。@s\u rc:将逻辑放在window2中,而不是window1中。当window2调用
window1->show()
时,让它做任何你想做的事情。