在 PyQt5 中,可以使用 close() 方法关闭子窗口。
以下是一个简单的示例:
from PyQt5.QtWidgets import QMainWindow, QApplication, QPushButton, QDialog
import sys
class MainWindow(QMainWindow):
def __init__(self):
super().__init__()
self.initUI()
def initUI(self):
btn = QPushButton("Open Dialog", self)
btn.clicked.connect(self.showDialog)
def showDialog(self):
dlg = QDialog(self)
btn = QPushButton("Close", dlg)
btn.clicked.connect(dlg.close)
dlg.exec_()
if __name__ == '__main__':
app = QApplication(sys.argv)
w = MainWindow()
w.show()
sys.exit(app.exec_())
在上面的代码中,当按下主窗口中的「Open Dialog」按钮时,会弹出一个子窗口,子窗口中的「Close」按钮点击后即可关闭子窗口。