我已经在带有Qt库的python中创建了QMainWindow。当用户单击关闭按钮时,我提示一个警告QMessageBox(是/否)。我想完全禁用主窗口的功能,直到用户对第二个窗口选择是或否。 (我想要“冻结”主窗口之类的东西。)我已经为主窗口尝试了“ self.setEnabled(False)”,但是用户仍然可以单击最小化和最大化按钮。
谢谢你。
您想要的是模态对话框。请查看QDialog的文档以及“模态”对话框的“详细描述”中的部分。模态对话框将接管UI,因此它是与用户进行交互的唯一点,直到被关闭为止,而无模态对话框则允许与应用程序其他窗口的持续交互。文档讨论了使对话框模态化的各种方法以及每种方法的利弊。
尝试在构造函数上设置窗口模式。这是一个例子:
def _init_(self):
self.setWindowModality(QtCore.Qt.ApplicationModal))