pyqt主窗口怎么创建子窗口

   2025-02-15 3140
核心提示:在PyQt中,可以使用QMainWindow类作为主窗口,可以使用QWidget类作为子窗口。以下是一个创建主窗口和子窗口的示例代码:from PyQ

在PyQt中,可以使用QMainWindow类作为主窗口,可以使用QWidget类作为子窗口。

以下是一个创建主窗口和子窗口的示例代码:

from PyQt5.QtWidgets import QApplication, QMainWindow, QWidget, QVBoxLayout, QPushButtonclass ChildWindow(QWidget):    def __init__(self):        super().__init__()        self.setWindowTitle('Child Window')        self.setGeometry(100, 100, 300, 200)        layout = QVBoxLayout()        button = QPushButton('Close')        button.clicked.connect(self.close)        layout.addWidget(button)        self.setLayout(layout)class MainWindow(QMainWindow):    def __init__(self):        super().__init__()        self.setWindowTitle('Main Window')        self.setGeometry(100, 100, 500, 400)        self.child_window = ChildWindow()        self.setCentralWidget(self.child_window)if __name__ == '__main__':    app = QApplication([])    main_window = MainWindow()    main_window.show()    app.exec()

在上述代码中,我们创建了一个ChildWindow类作为子窗口,其继承自QWidget类。在ChildWindow的构造函数中,我们设置了子窗口的标题、大小和布局,并添加了一个按钮。在按钮的clicked信号与self.close槽函数之间建立了连接。

然后,我们创建了一个MainWindow类作为主窗口,其继承自QMainWindow类。在MainWindow的构造函数中,我们设置了主窗口的标题、大小,并创建了一个ChildWindow对象作为主窗口的中央窗口,通过self.setCentralWidget方法将其设置为中央窗口。

最后,我们创建了一个QApplication对象,实例化MainWindow对象,并通过show方法显示主窗口,最后通过app.exec方法进入主事件循环。

 
 
更多>同类维修知识
推荐图文
推荐维修知识
点击排行
网站首页  |  关于我们  |  联系方式  |  用户协议  |  隐私政策  |  网站留言