- PyQt5 教程
- PyQt5 - 主页
- PyQt5 - 简介
- PyQt5 - 新特性
- PyQt5 - Hello World
- PyQt5 - 主要类
- PyQt5 - 使用 Qt Designer
- PyQt5 - 信号和槽
- PyQt5 - 布局管理
- PyQt5 - 基本窗口小部件
- PyQt5 - QDialog 类
- PyQt5 - QMessageBox
- PyQt5 - 多文档界面
- PyQt5 - 拖放
- PyQt5 - 数据库处理
- PyQt5 - 绘图 API
- PyQt5 - 画刷样式常量
- PyQt5 - QClipboard
- PyQt5 - QPixmap 类
- PyQt5 实用资源
- PyQt5 - 快速指南
- PyQt5 - 实用资源
- PyQt5 - 讨论
PyQt5 - QFormLayout 类
QFormLayout 是一种便捷的方法来创建两列表单,其中每一行均包含与标签相关联的输入字段。按惯例,左列包含标签,右列包含输入字段。主要经常使用 addRow() 方法的三个重载 addLayout()。
| 序号。 | 方法和说明 |
|---|---|
| 1 |
addRow(QLabel, QWidget) 添加包含标签和输入字段的一行 |
| 2 |
addRow(QLabel, QLayout) 在第二列中添加子布局 |
| 3 |
addRow(QWidget) 添加跨两列的小部件 |
示例
此代码在第一行添加了一个 LineEdit 字段以输入名称。然后,它在下一行的第二列中添加一个垂直框布局以用于两个地址字段。接下来,在第三行的第二列中添加一个包含两个单选按钮字段的水平框布局对象。第四行显示两个按钮“提交”和“取消”。
import sys
from PyQt5.QtCore import *
from PyQt5.QtGui import *
from PyQt5.QtWidgets import *
def window():
app = QApplication(sys.argv)
win = QWidget()
l1 = QLabel("Name")
nm = QLineEdit()
l2 = QLabel("Address")
add1 = QLineEdit()
add2 = QLineEdit()
fbox = QFormLayout()
fbox.addRow(l1,nm)
vbox = QVBoxLayout()
vbox.addWidget(add1)
vbox.addWidget(add2)
fbox.addRow(l2,vbox)
hbox = QHBoxLayout()
r1 = QRadioButton("Male")
r2 = QRadioButton("Female")
hbox.addWidget(r1)
hbox.addWidget(r2)
hbox.addStretch()
fbox.addRow(QLabel("sex"),hbox)
fbox.addRow(QPushButton("Submit"),QPushButton("Cancel"))
win.setLayout(fbox)
win.setWindowTitle("PyQt")
win.show()
sys.exit(app.exec_())
if __name__ == '__main__':
window()
以上代码生成以下输出 −
pyqt_layout_management.htm
广告