PYQT6怎么再销毁窗口后执行某些程序
时间: 2024-09-06 19:01:58 浏览: 44
在PyQt6中,如果你想在销毁窗口后执行某些程序,你可以通过重写窗口类中的`closeEvent`方法来实现。这个方法会在窗口关闭之前被调用,你可以在这个方法中添加你想要执行的任何代码。以下是一个简单的例子:
```python
import sys
from PyQt6.QtWidgets import QApplication, QMainWindow, QPushButton
class MyWindow(QMainWindow):
def __init__(self):
super().__init__()
self.setWindowTitle('PyQt6 窗口示例')
self.setGeometry(100, 100, 280, 80)
# 添加一个按钮,用于关闭窗口
self.close_button = QPushButton('关闭窗口', self)
self.close_button.clicked.connect(self.close)
self.close_button.setGeometry(50, 50, 100, 30)
def closeEvent(self, event):
# 在窗口关闭前执行的代码
print('窗口正在关闭...')
# 在这里执行你的程序
# ...
# 确保事件正常处理
event.accept()
def main():
app = QApplication(sys.argv)
window = MyWindow()
window.show()
sys.exit(app.exec())
if __name__ == '__main__':
main()
```
在这个例子中,`closeEvent`方法会在用户点击关闭按钮时被调用,然后你可以在其中添加你希望在窗口销毁之前执行的代码。
阅读全文