1. 程式人生 > >pyqt5實現打開子窗口

pyqt5實現打開子窗口

tex 構造函數 .cn utf-8 打開 images click styles init

# -*- coding: utf-8 -*-

import sys
from PyQt5.QtWidgets import *
from PyQt5.QtCore import *


class FirstWindow(QWidget):

    close_signal = pyqtSignal()
    def __init__(self, parent=None):
        # super這個用法是調用父類的構造函數
        # parent=None表示默認沒有父Widget,如果指定父親Widget,則調用之
        super(FirstWindow, self).__init__
(parent) self.resize(100, 100) self.btn = QToolButton(self) self.btn.setText("click") def closeEvent(self, event): self.close_signal.emit() self.close() class SecondWindow(QWidget): def __init__(self, parent=None): super(SecondWindow, self).__init__
(parent) self.resize(200, 200) self.setStyleSheet("background: black") def handle_click(self): if not self.isVisible(): self.show() def handle_close(self): self.close() if __name__ == "__main__": App = QApplication(sys.argv) ex = FirstWindow() s
= SecondWindow() ex.btn.clicked.connect(s.handle_click) ex.btn.clicked.connect(ex.hide) ex.close_signal.connect(ex.close) ex.show() sys.exit(App.exec_())

技術分享圖片

pyqt5實現打開子窗口