首页 PyQt5布局管理器
pay pay
教程目录
  • PyQt5布局管理器

PyQt5布局管理器_不同PyQt5布局管理器使用详解

日期: 二月 16, 2023, 3:36 a.m.
栏目: PyQt5教程
阅读: 348
作者: Python自学网-村长

摘要: 在PyQt5中,布局管理器是用于控制控件在窗口中的位置和大小的重要工具。通过使用布局管理器,可以轻松实现控件的自适应布局,使得程序的界面在不同的窗口大小和分辨率下都能够良好地展示。

一、PyQt5布局管理器介绍

在PyQt5中,布局管理器是用于控制控件在窗口中的位置和大小的重要工具。通过使用布局管理器,可以轻松实现控件的自适应布局,使得程序的界面在不同的窗口大小和分辨率下都能够良好地展示。常见的布局管理器包括:

  • QHBoxLayout:水平布局管理器,将控件水平排列。
  • QVBoxLayout:垂直布局管理器,将控件垂直排列。
  • QGridLayout:网格布局管理器,将控件按照网格布局排列。
  • QFormLayout:表单布局管理器,将控件按照表单的形式排列。
  • QStackedLayout:堆叠布局管理器,将多个控件叠加在一起,只显示其中的一个控件。

下面是一个简单的例子,演示了如何使用QHBoxLayout和QVBoxLayout实现水平和垂直布局:

import sys
from PyQt5.QtWidgets import QApplication, QWidget, QPushButton, QHBoxLayout, QVBoxLayout

class MyWidget(QWidget):
    def __init__(self):
        super().__init__()
        self.initUI()

    def initUI(self):
        okButton = QPushButton('OK', self)
        cancelButton = QPushButton('Cancel', self)

        hbox = QHBoxLayout()
        hbox.addStretch(1)
        hbox.addWidget(okButton)
        hbox.addWidget(cancelButton)

        okButton2 = QPushButton('OK', self)
        cancelButton2 = QPushButton('Cancel', self)

        vbox = QVBoxLayout()
        vbox.addStretch(1)
        vbox.addWidget(okButton2)
        vbox.addWidget(cancelButton2)

        self.setLayout(hbox)
        # self.setLayout(vbox)  # 可以切换为垂直布局

        self.setGeometry(100, 100, 300, 200)
        self.setWindowTitle('Layout example')

if __name__ == '__main__':
    app = QApplication(sys.argv)
    widget = MyWidget()
    widget.show()
    sys.exit(app.exec_())

在上述代码中,我们创建了两个QPushButton,并通过QHBoxLayout和QVBoxLayout分别将它们水平和垂直排列。在这里,我们使用了addStretch方法,用于在控件之间添加一些空隙,使得控件的布局更加美观。最后,我们将布局管理器通过setLayout方法设置到了窗口中,完成了控件的布局。

二、更多详细教程参考

 

 

 

部分文字内容为【Python自学网】原创作品,转载请注明出处!视频内容已申请版权,切勿转载!
回顶部