PySide基礎建置 與 QtDesigner

在安裝完Python之後
基本上都會有包含pip了
直接在終端機(Windows 用 cmd 或是power shell)打上

$pip install PySide

如果不知道有沒有安裝成功
可以打上

$pip freeze

查看已經安裝的python module

前面提到
PySide也有自帶QtDesigner
位置在於
PythonXX\Lib\site-packages\PySide資料夾下

QtDesigner儲存的檔案為.ui檔
有使用到資源檔的話會有個.qrc檔
但兩個檔案可不能直接使用於python...

如果之前有接觸過QtCreator的人就知道在QtCreator上可以直接寫code
要到VS上使用就會需要轉換
為了可以順利地建置使用 Qt 的應用程式,Qt 針對不同的需求,提供三種自己的編譯器讓開發者使用,分別是:User Interface Compiler (uic)、Resource Compiler (rcc)、Meta-Object Compiler (moc)。透過這三種編譯器,將檔案轉換為 C++ 編譯器可以支援的內容,來進行程式的建置。

當然PySide也是一樣需要轉換
在ui檔案資料夾下開啟終端機輸入

$pyside-uic -o target.py source.ui
$pyside-rcc -o target.py source.qrc

上面是轉換ui檔
下面是轉換qrc檔
source是檔案名稱,target是要轉換的檔案名稱

轉換完成後的.py於Python檔案中import即可顯示在QtDesigner中畫的UI

範例:
我於designer中放了一個label準備用來顯示HelloWorld!
並儲存檔案名稱為HelloWorld.ui
之後在檔案資料夾下開啟終端機做轉換
轉換完成後會出現對應的py檔

於main.py中import

import sys
from PySide.QtGui import *
from HelloWorld import Ui_MainWindow

def PrintHello():
    print("Hello")

class MainWindow(QMainWindow,Ui_MainWindow):
    def __init__(self, parent=None):
        super(MainWindow,self).__init__(parent)
        self.setupUi(self)
        self.label.setText("HelloWorld")

if __name__=='__main__':
    Program = QApplication(sys.argv)
    Window=MainWindow()
    Window.show()
    Program.exec_()



執行結果:

沒有留言:

張貼留言

About

努力在程式的大海
用力的揮動雙手
找出屬於自己的航線

Blog Archive

Traffic