python GUI庫圖形界面開發之PyQt5布局控件QHBoxLayout詳細使用方法與實例
時間:2020-03-06來源:電腦系統城作者:電腦系統城
這篇文章主要介紹了python GUI庫圖形界面開發之PyQt5布局控件QHBoxLayout詳細使用方法與實例,需要的朋友可以參考下
PyQt5布局控件QHBoxLayout簡介
采用QBOXLayout類可以在水平和垂直方向上排列控件,QHBoxLayout和QVBoxLayout類繼承自QBoxLayout
采用QHBoxLayout類,按照從左到右的順序來添加控件
QHBoxLayout類中常用的方法如下
方法 |
描述 |
addLayout(self,stretch=0) |
在窗口的右邊添加布局,使用stretch(伸縮量)進行伸縮,伸縮量默認為0 |
addWidget(self,QWidget.stretch,Qt.Alignmeny alihnment) |
在布局中添加控件 |
|
stretch(伸縮量),只適用于QBoxLayout,控件和窗口會隨著伸縮量的變大而增大 |
|
alignment:指定的對齊方式 |
addSpacing(self,int) |
設置各控件的上下間距,通過該方法可以增加額外的控件 |
QHBoxLayout對齊方式參數
參數 |
描述 |
Qt.AlignLeft |
水平方向居左對齊 |
Qt.AlignRight水平方向具有對齊 |
|
Qt.AlignCenter |
水平方向居中對齊 |
Qt.AlignJustify |
水平方向兩端對齊 |
Qt.AlignTop |
垂直方向靠上對齊 |
Qt.AlignBottom |
垂直方向靠下對齊 |
Qt.AlignVCenter |
垂直方向居中對齊 |
QHBoxLayout水平布局管理實例
- import sys
- from PyQt5.QtWidgets import QApplication ,QWidget ,QHBoxLayout , QPushButton
- class Winform(QWidget):
- def __init__(self,parent=None):
- super(Winform,self).__init__(parent)
- self.setWindowTitle("水平布局管理例子")
- # 水平布局按照從左到右的順序進行添加按鈕部件。
- hlayout = QHBoxLayout()
- hlayout.addWidget( QPushButton(str(1)))
- hlayout.addWidget( QPushButton(str(2)))
- hlayout.addWidget( QPushButton(str(3)))
- hlayout.addWidget( QPushButton(str(4)))
- hlayout.addWidget( QPushButton(str(5)))
- # todo 優化1 設置控件間距
- #hlayout.setSpacing(20)
- self.setLayout(hlayout)
- if __name__ == "__main__":
- app = QApplication(sys.argv)
- form = Winform()
- form.show()
- sys.exit(app.exec_())
運行效果圖

優化一:設置各控件之間的間距
hlayout.setSpacing(20)

QHBoxLayout水平布局對齊方式實例
在某些情況下,需要將布局中的某些控件居中,俱下顯示,那么可以通過對齊方式參數Qt.Alignment來設置,示范如下
- import sys
- from PyQt5.QtWidgets import QApplication ,QWidget ,QHBoxLayout , QPushButton
- from PyQt5.QtCore import Qt
- class Winform(QWidget):
- def __init__(self,parent=None):
- super(Winform,self).__init__(parent)
- self.setWindowTitle("水平布局管理例子")
- self.resize(800, 200)
- # 水平布局按照從左到右的順序進行添加按鈕部件。
- hlayout = QHBoxLayout()
- #水平居左 垂直居上
- hlayout.addWidget( QPushButton(str(1)) , 0 , Qt.AlignLeft | Qt.AlignTop)
- hlayout.addWidget( QPushButton(str(2)) , 0 , Qt.AlignLeft | Qt.AlignTop)
- hlayout.addWidget( QPushButton(str(3)))
- #水平居左 垂直居下
- hlayout.addWidget( QPushButton(str(4)) , 0 , Qt.AlignLeft | Qt.AlignBottom )
- hlayout.addWidget( QPushButton(str(5)), 0 , Qt.AlignLeft | Qt.AlignBottom)
- self.setLayout(hlayout)
- if __name__ == "__main__":
- app = QApplication(sys.argv)
- form = Winform()
- form.show()
- sys.exit(app.exec_())
運行效果圖如下

本文主要講解了關于PyQt5布局控件QHBoxLayout詳細使用方法與實例,更多PyQt5布局控件的知識請查看下面的相關鏈接
相關信息
-
PyTorch兩種安裝方法
PyTorch兩種安裝方法,本文給大家介紹的非常詳細,對大家的學習或工作具有一定的參考借鑒價值...
2021-03-29
-