Pyqt5中5種布局的實(shí)現(xiàn)示例
在PyQt5中,布局管理器是用來(lái)控制窗口中控件(widgets)的位置和大小的。使用布局管理器而不是手動(dòng)定位控件可以讓界面自動(dòng)適應(yīng)不同的窗口大小和顯示設(shè)置。PyQt5提供了多種布局管理器來(lái)滿足不同的布局需求。
1. 水平布局(QHBoxLayout)
QHBoxLayout 排列控件在水平方向上??丶刺砑拥捻樞驈淖蟮接遗帕小?/p>
from PyQt5.QtWidgets import QWidget, QHBoxLayout, QPushButton
widget = QWidget()
hbox = QHBoxLayout()
hbox.addWidget(QPushButton('Button 1'))
hbox.addWidget(QPushButton('Button 2'))
hbox.addWidget(QPushButton('Button 3'))
widget.setLayout(hbox)
widget.show()
2. 垂直布局(QVBoxLayout)
QVBoxLayout 在垂直方向上排列控件??丶刺砑拥捻樞驈纳系较屡帕小?/p>
from PyQt5.QtWidgets import QWidget, QVBoxLayout, QPushButton
widget = QWidget()
vbox = QVBoxLayout()
vbox.addWidget(QPushButton('Button 1'))
vbox.addWidget(QPushButton('Button 2'))
vbox.addWidget(QPushButton('Button 3'))
widget.setLayout(vbox)
widget.show()
3. 網(wǎng)格布局(QGridLayout)
QGridLayout 允許你以網(wǎng)格方式排列控件。你可以指定控件的行和列。
from PyQt5.QtWidgets import QWidget, QGridLayout, QPushButton
widget = QWidget()
grid = QGridLayout()
grid.addWidget(QPushButton('Button 1'), 0, 0)
grid.addWidget(QPushButton('Button 2'), 0, 1)
grid.addWidget(QPushButton('Button 3'), 1, 0)
grid.addWidget(QPushButton('Button 4'), 1, 1)
widget.setLayout(grid)
widget.show()
4. 表單布局(QFormLayout)
QFormLayout 是為表單設(shè)計(jì)的,它以兩列方式排列控件:左列是標(biāo)簽,右列是對(duì)應(yīng)的字段(如文本框)。
from PyQt5.QtWidgets import QWidget, QFormLayout, QLineEdit, QLabel
widget = QWidget()
form = QFormLayout()
form.addRow(QLabel('Name:'), QLineEdit())
form.addRow(QLabel('Age:'), QLineEdit())
form.addRow(QLabel('Job:'), QLineEdit())
widget.setLayout(form)
widget.show()
5. 堆疊布局(QStackedLayout)
QStackedLayout 允許你堆疊多個(gè)控件在同一個(gè)位置,然后選擇一個(gè)控件進(jìn)行顯示。
from PyQt5.QtWidgets import QWidget, QStackedLayout, QPushButton
widget = QWidget()
stack = QStackedLayout()
stack.addWidget(QPushButton('Button 1'))
stack.addWidget(QPushButton('Button 2'))
stack.addWidget(QPushButton('Button 3'))
# 設(shè)置當(dāng)前顯示的控件索引
stack.setCurrentIndex(1)
widget.setLayout(stack)
widget.show()
6. 自定義布局
可以通過(guò)繼承 QLayout 類來(lái)創(chuàng)建自定義布局管理器,為特定的布局需求提供解決方案。
使用布局管理器的優(yōu)點(diǎn)
- 自動(dòng)調(diào)整:當(dāng)窗口大小改變時(shí),布局管理器會(huì)自動(dòng)調(diào)整控件的大小和位置。
- 國(guó)際化:布局管理器會(huì)考慮不同語(yǔ)言的文本長(zhǎng)度變化。
- 容易修改:使用布局管理器可以讓你在不改變布局邏輯的情況下添加、移除或重新排列控件。
正確使用布局管理器是創(chuàng)建專業(yè)和易用GUI的關(guān)鍵。布局管理器的選擇取決于你的具體需求和期望的界面布局。
到此這篇關(guān)于Pyqt5中5種布局的實(shí)現(xiàn)示例的文章就介紹到這了,更多相關(guān)Pyqt5 布局內(nèi)容請(qǐng)搜索腳本之家以前的文章或繼續(xù)瀏覽下面的相關(guān)文章希望大家以后多多支持腳本之家!
- python GUI庫(kù)圖形界面開(kāi)發(fā)之PyQt5窗口布局控件QStackedWidget詳細(xì)使用方法
- python GUI庫(kù)圖形界面開(kāi)發(fā)之PyQt5動(dòng)態(tài)(可拖動(dòng)控件大小)布局控件QSplitter詳細(xì)使用方法與實(shí)例
- python GUI庫(kù)圖形界面開(kāi)發(fā)之PyQt5布局控件QVBoxLayout詳細(xì)使用方法與實(shí)例
- python GUI庫(kù)圖形界面開(kāi)發(fā)之PyQt5布局控件QGridLayout詳細(xì)使用方法與實(shí)例
- python GUI庫(kù)圖形界面開(kāi)發(fā)之PyQt5表單布局控件QFormLayout詳細(xì)使用方法與實(shí)例
- Pyqt5自適應(yīng)布局實(shí)例
- Python深度學(xué)習(xí)實(shí)戰(zhàn)PyQt5布局管理項(xiàng)目示例詳解
- PyQt5的相對(duì)布局管理的實(shí)現(xiàn)
相關(guān)文章
python機(jī)器學(xué)習(xí)之KNN分類算法
這篇文章主要為大家詳細(xì)介紹了python機(jī)器學(xué)習(xí)之KNN分類算法,具有一定的參考價(jià)值,感興趣的小伙伴們可以參考一下2018-08-08
Python傳統(tǒng)圖像處理之皮膚區(qū)域檢測(cè)詳解
這篇文章主要介紹了在不同情景下對(duì)傳統(tǒng)圖像進(jìn)行皮膚區(qū)域檢測(cè),文章中的代碼具有一定的參考價(jià)值,感興趣的小伙伴可以跟隨小編一起來(lái)學(xué)習(xí)學(xué)習(xí)2021-12-12
python如何實(shí)時(shí)獲取tcpdump輸出
這篇文章主要介紹了python如何實(shí)時(shí)獲取tcpdump輸出,幫助大家更好的理解和使用python,感興趣的朋友可以了解下2020-09-09
在Pycharm中將pyinstaller加入External Tools的方法
今天小編就為大家分享一篇在Pycharm中將pyinstaller加入External Tools的方法,具有很好的參考價(jià)值,希望對(duì)大家有所幫助。一起跟隨小編過(guò)來(lái)看看吧2019-01-01
python協(xié)程之yield和yield?from實(shí)例詳解
Python在并發(fā)處理上不僅提供了多進(jìn)程和多線程的處理,還包括了協(xié)程,下面這篇文章主要給大家介紹了關(guān)于python協(xié)程之yield和yield?from的相關(guān)資料,文中通過(guò)實(shí)例代碼介紹的非常詳細(xì),需要的朋友可以參考下2022-12-12
Python datetime 模塊常用功能(輕松搞定時(shí)間處理)
Python的datetime模塊是處理日期時(shí)間的核心工具,包含date、time、datetime、timedelta四大類,用于獲取當(dāng)前時(shí)間、格式轉(zhuǎn)換、時(shí)間計(jì)算及時(shí)區(qū)處理,解決常見(jiàn)時(shí)間問(wèn)題,適用于日志記錄、數(shù)據(jù)處理等場(chǎng)景,本文介紹Python datetime 模塊常用功能,感興趣的朋友一起看看吧2025-07-07
python之生產(chǎn)者消費(fèi)者模型實(shí)現(xiàn)詳解
這篇文章主要介紹了python之生產(chǎn)者消費(fèi)者模型實(shí)現(xiàn)詳解,文中通過(guò)示例代碼介紹的非常詳細(xì),對(duì)大家的學(xué)習(xí)或者工作具有一定的參考學(xué)習(xí)價(jià)值,需要的朋友可以參考下2019-07-07

