我正在尝试在活动的应用程序窗口内启动一个对话窗口。我面临的困难是一旦启动对话窗口就能够与活动的应用程序窗口进行交互。
这是我的python脚本的一个例子:
class select_output_UI(QtGui.QDialog):
def __init__(self, *args, **kwargs):
super(select_output_UI, self).__init__(*args, **kwargs)
# BUILD UI FROM FILE
ui_file = QtCore.QFile("./select_output.ui")
ui_file.open(QtCore.QFile.ReadOnly)
self.myWidget = QtUiTools.QUiLoader().load(ui_file, self)
ui_file.close()
# SIGNALS
self.myWidget.cancel_button.clicked.connect(self.cancel_button_pressed)
def cancel_button_pressed(self):
self.button_pressed = "CANCEL"
self.close()
dialog = select_output_UI(QtGui.QApplication.activeWindow())
我熟悉启动此对话框窗口的 2 个选项:
dialog.show()
此选项允许我与活动的应用程序窗口进行交互,但此选项不会等待对话框窗口关闭,然后继续运行下面的任何代码。
dialog.exec_()
此选项不允许我与活动的应用程序窗口进行交互。但它所做的是等待对话窗口关闭,然后再继续执行其余代码。
有没有办法在对话框窗口启动时与应用程序窗口进行交互,并让 python 等到对话框窗口关闭,然后再继续阅读我的其余代码?