上一篇講了一下佈局 只涉及了一點點,佈局就將設置好的控件排布在窗口上顯示,一共有三個半佈局方式,垂直佈局和水平佈局,網格佈局,還有半個表單佈局。由於人的閲讀習慣我們一般是整體主佈局採用垂直佈局,單個小布局框架採用水平佈局,當然直接使用網格佈局也是可以的。
引入庫
from PySide6.QtWidgets import QVBoxLayout, QHBoxLayout, QGridLayout, QFormLayout
QVBoxLayout——垂直佈局;QHBoxLayout——水平佈局,QGridLayout——網格佈局,QFormLayout——表單佈局
應用
使用也很簡單,垂直和水平是很類似的下面只舉一個例子
# 垂直佈局 layout = QVBoxLayout() #水平佈局只需要更改這個函數就可以了 layout.addWidget(QPushButton('按鈕1')) layout.addWidget(QPushButton('按鈕2')) layout.addWidget(QPushButton('按鈕3')) self.setLayout(layout)
我們就可以得到下面的窗口
垂直佈局:
水平佈局: 
下面就是網格佈局了
# 網格佈局 layout = QGridLayout() layout.addWidget(QPushButton('按鈕1'), 0, 0) layout.addWidget(QPushButton('按鈕2'), 0, 1) layout.addWidget(QPushButton('按鈕3'), 1, 0) layout.addWidget(QPushButton('按鈕4'), 1, 1) layout.addWidget(QPushButton('按鈕5'), 2, 0, 1, 2) self.setLayout(layout)
需要注意的是網格佈局的addWidget 可以使用五個參數,(添加控件,控件起始行,控件起始列,控件行高,控件列寬)
其中行列座標起始為(0,0),行高和列寬不設置則默認為1,1
網格佈局: 
剩下就那半個了,表單佈局,其實就是網格佈局的一種,完全可以被網格佈局代替,就不詳細介紹了