博客 / 詳情

返回

pyqt圖形化顯示—1.基礎框架和控件

前期準備:

安裝pyside6庫,並在庫內打開Qt Designer

1. 基礎框架:

導入

from PySide6.QtWidgets import QApplication, QWidget
QWidget 空白頁面 更常使用

創建並繼承類

class MyWindow(QWidget):
    def __init__(self):
        """
        初始化方法,用於創建窗口實例
        繼承自QMainWindow,作為主窗口使用
        """
        super().__init__()  # 調用父類的__init__方法,初始化

主程序

if __name__ == '__main__':
    app = QApplication([])  # 創建應用程序實例
    window = MyWindow()  # 創建窗口實例
    window.show()  # 顯示窗口
    app.exec()  # 進入應用程序主循環

2.基礎控件

按鈕:

可以交互的控件

QPushButton庫
from PySide6.QtWidgets import QPushButton

使用:

 btn = QPushButton('按鈕名稱', self)  # 設置一個按鍵
 # 屬性設置 在qt designer中找pushbutton的參數 xx.set參數名稱即可
 btn.setGeometry(100, 100, 100, 50)  # 設置按鍵位置和大小(X, Y, 寬, 高)
 btn.setToolTip('這是一個按鈕')  # 設置按鈕提示

其他不變

輸入框:

同樣可以交互的控件【也可以設置只讀不交互

QLineEdit庫
from PySide6.QtWidgets import QLineEdit

使用和按鍵類似

li = QLineEdit(self)    # 設置一個輸入框
# 屬性設置 在qt designer中找Line Edit的參數 xx.set參數名稱即可

其他不變

標籤:

文本,不可交互

QLabel庫
from PySide6.QtWidgets import QLabel

使用類似,設置然後設置參數

lb = QLabel('標籤名稱', self)  # 設置一個標籤
# 屬性設置 在qt designer中找Label的參數 xx.set參數名稱即可

3. ui文件轉換調用

試用一下會發現控件參數也太多了,還不包括佈局啊對齊啊 雜七雜八也太多了

那麼有沒有什麼更簡單的方法呢?有的,有的

這時候前期準備中打開的Qt Designer來發揮作用了

直接在Qt Designer內設置好佈局整個圖形ui界面,保存為ui文件

這時候在ui文件的文件夾環境內運行終端

pyside6-uic ui名稱.ui -o ui名稱.py

得到一個py文件這時候直接導入繼承使用就可以啦

rom program1.login import Ui_Form

class MyWindow(QWidget,Ui_Form):
    def __init__(self):
        super().__init__()

        self.setupUi(self)  # 設置用户界面

其他的不變

經過上述就可以得到一個單獨的ui圖形界面啦

 

user avatar
0 位用戶收藏了這個故事!

發佈 評論

Some HTML is okay.