close

VSCode開啟資料夾Two Windows Forms

建立一個子資料夾view

利用qt designer建立兩個windows form如下

第一個視窗main.ui

 

第二個視窗secWindow.ui

 

利用qtuic5轉檔,即將*.ui轉成*.py

> pyuic5 -x main.ui -o main_ui.py

> pyuic5 -x secWindow.ui secWindow_ui.py

 

回到上一層根目錄,建立一個MVC架構中的controller,

並命名為main.py

import sys
import typing
from PyQt5.QtCore import *
from PyQt5.QtGui import *
from PyQt5.QtWidgets import QApplication, QMainWindow
from view.main_ui import *
from view.secWindow_ui import *

class PyQt_Main(QMainWindow):
    def __init__(self):                  
        QMainWindow.__init__(self)      
        self.ui = Ui_MainWindow()      
        self.ui.setupUi(self)            
        self.setWindowTitle("開啟另一個windows form")
        self.ui.pushButton.clicked.connect(lambda: self.openSecWindow())
        self.show()                    
        return

    def openSecWindow(self):
        self.ui = Ui_SecWindow()
        self.ui.setupUi(self)
        self.ui.pushButton.clicked.connect(lambda: self.openFstWindow())
        self.ui.pushButton.setText("開啟第1個window")
        self.setWindowTitle("Second window")    
        self.show()
        return
       
    def openFstWindow(self):
        self.ui = Ui_MainWindow()
        self.ui.setupUi(self)
        self.setWindowTitle("First window")
        self.ui.pushButton.clicked.connect(lambda: self.openSecWindow())
        self.ui.pushButton.setText("開啟第2個window")
        self.show()
        return
   

def main():
    app = QtWidgets.QApplication(sys.argv)
    main = PyQt_Main()
    sys.exit(app.exec_())      

if __name__ == "__main__":
    main()
 
 

 

 

 

 

 

點選"開啟第1個window"按鈕

點選"開啟第2個window"按鈕

 

 

 

 

 

arrow
arrow
    全站熱搜

    me1237guy 發表在 痞客邦 留言(0) 人氣()