有没有办法检测用户是否试图关闭窗口? 例如,在 Tkinter 中我们可以这样做:
def exit_dialog():
#do stuff
pass
root = Tk()
root.protocol("WM_DELETE_WINDOW", exit_dialog)
root.mainloop()
谢谢。
最佳答案
覆盖closeEvent
QWidget
在你的主窗口中的方法。
例如:
class MainWindow(QWidget): # or QMainWindow
...
def closeEvent(self, event):
# do stuff
if can_exit:
event.accept() # let the window close
else:
event.ignore()
另一种可能性是使用 QApplication
的 aboutToQuit
像这样的信号:
app = QApplication(sys.argv)
app.aboutToQuit.connect(myExitHandler) # myExitHandler is a callable
关于python - PySide/PyQt 检测用户是否试图关闭窗口,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/9249500/