close

今天將先前的 Pyside6+OpneCV每分鐘記錄一個錄影檔案

改寫成MVC框架

首先,針對view利用designer設計界面如下

新增view資料夾,將上面介面存檔為main.ui

 將main.ui編譯成一個獨立python script file

 > pyside6-uic main.ui > main_ui.py

 

新增一個view.py,

1. 新增一個類別View繼承QMainWindow

2. from view.main_ui import UI_MainWindow

意思為從view資料夾下的main_ui.py引用UI_MainWindow類別

3. 透過self.ui = UI_MainWindow() 建立該類別的實體

self.ui.setupUi(self) 套用介面

 

根目錄新增一個controller資料夾及一個controller.py檔案

在controller.py中

1. from view.view import View 的意思為

從view資料夾下的view.py中引入View類別

2. 創建Controller類別並 新增View類別的實體

self.view = View()

在ex4.py中

1. 從controller資料夾讀取controller.py,引用Controller類別

from controller.controller import Controller

2. 主程式入口

if __name__ == "__main__":

3. 建立應用程式

app = QtWidgets.QApplication(sys.argv)

 

4. 建立Controller實體

 

controller = Controller()

 

5. 防止應用程式直接關閉,會困在這一行

sys.exit(app.exec())

 

 

 

執行ex4.py結果如下

 

 

 

 

 

arrow
arrow
    全站熱搜
    創作者介紹
    創作者 me1237guy 的頭像
    me1237guy

    天天向上

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