
PyQt5中有4种布局方式,分别如下:

要创建这几种布局的话,得先导入相应的库:
from PyQt5.QtWidgets import QVBoxLayout,QHBoxLayout,QGridLayout,QFormLayout
接着创建布局:
vbox = QVBoxLayout()
将其它控件加入到布局中:
vbox.addWidget(button_1)
最后还需要将布局加入到窗体,这里self就是代表窗体:
self.setLayout(vbox)
下面的代码演示了创建了几个控件,然后加入到垂直布局中,代码文件我们使用之前的两个框架,下面的UI代码放在UI_form.py中:
from PyQt5.QtWidgets import QWidget,QTextEdit,QPushButton,QVBoxLayout
class uiLoad(QWidget):
def __init__(self):
super().__init__()
self.setupUI()
def setupUI(self):
self.setWindowTitle("QTextEdit多行文本")
# 创建QTextEdit控件
self.QT = QTextEdit()
# 创建按钮
self.btn_1 = QPushButton("显示文本")
self.btn_2 = QPushButton("显示HTML")
# 绑定槽
self.btn_1.clicked.connect(self.onClick_ButtonText)
self.btn_2.clicked.connect(self.onClick_ButtonHTML)
# 创建垂直布局
vbox = QVBoxLayout()
vbox.addWidget(self.QT)
vbox.addWidget(self.btn_1)
vbox.addWidget(self.btn_2)
self.setLayout(vbox)
def onClick_ButtonText(self):
self.QT.setPlainText("这是普通文本")
def onClick_ButtonHTML(self):
self.QT.setHtml('<font color="blue" size="5">这是HTML文本</font>')
用于启动的runMain.py文件:
import sys
from UI_form import *
from PyQt5.QtWidgets import QApplication,QWidget
if __name__ == '__main__':
app = QApplication(sys.argv)
mainWindow = uiLoad()
mainWindow.show()
sys.exit(app.exec_())
© 版权声明
文章版权归作者所有,未经允许请勿转载。
相关文章
暂无评论...