一、分割类控件
分割类控件主要对窗口中进行功能划分,使窗口看起来更加合理,美观。PySide 中提供了分割线和弹簧两种类型的分割类控件。
我们可以在终端中使用 pip 安装 pyside 模块。
pip install pyside6
二、分割线
PySide 提供两个分割线控件,分别是水平分割线(HorizontalLine)和垂直分割线(VerticalLine),但这两个分割线控件对应的类都是 QFrame
类,该类提供了一个 setFrameShape(arg__1)
方法,通过设置该方法的参数,可以将分割线显示为水平或者垂直。
QFrame 类常用方法及其说明如下:
方法 | 说明 |
---|---|
setFrameShape(arg__1) | 设置分割线方向,取值如下: - QFrame.Shape.HLine :水平分割线- QFrame.Shape.VLine :垂直分割线 |
setFrameShadow(arg__1) | 设置分割线的显示样式,取值如下: - QFrame.Shadow.Plain :无阴影- QFrame.Shadow.Raised :有边框阴影,并且凸起显示- QFrame.Shadow.Sumken :有边框阴影,并且下沉显示,这是默认设置 |
setLineWidth(arg__1) | 设置分割线宽度 |
setMidLineWidth(arg__1) | 设置分割线中间线的宽度 |
import sys
from PySide6.QtWidgets import QApplication, QMainWindow
from PySide6.QtWidgets import QFrame
if __name__ == "__main__":
# 1.创建一个QApplication类的实例
app = QApplication(sys.argv)
# 2.创建一个窗口
w = QMainWindow()
# 3.设置窗口对象大小
w.resize(700, 500)
# 4.创建分割线控件对象,并指定父窗口
frame = QFrame(w)
# 5.设置分割线框控件的位置和尺寸
frame.setGeometry(100, 100, 500, 300)
# 6.设置分割线方向
frame.setFrameShape(QFrame.Shape.HLine)
# 7.设置分割线的显示样式
frame.setFrameShadow(QFrame.Shadow.Raised)
# 8.设置分割线宽度
frame.setLineWidth(10)
# 9.设置分割线中间线的宽度
frame.setMidLineWidth(5)
# 10.展示窗口
w.show()
# 11.进入程序的主循环并通过exit()函数确保主循环安全结束
sys.exit(app.exec())
三、弹簧
PySide 中提供了两种弹簧,分别是 HorizontalSpacer 和 VerticalSpacer,但这两种控件对应的类都是 QSpacerItem 类,水平和垂直主要通过宽度和高度(水平弹簧默认的宽度和高度分别是 40, 20;而垂直弹簧的默认宽度和高度分别是 20、40)进行区分。
QSpacerItem 弹簧主要用于布局管理器中,用来使布局管理器中的控件更加合理。
import sys
from PySide6.QtWidgets import QApplication, QWidget
from PySide6.QtWidgets import QHBoxLayout, QSpacerItem
from PySide6.QtWidgets import QPushButton
if __name__ == "__main__":
# 1.创建一个QApplication类的实例
app = QApplication(sys.argv)
# 2.创建一个窗口
w = QWidget()
# 3.设置窗口对象大小
w.resize(700, 500)
# 4.创建布局
hBoxLayout = QHBoxLayout(w)
# 5.将按钮添加到水平布局
pushButton1 = QPushButton("按钮1")
hBoxLayout.addWidget(pushButton1)
# 6.创建弹簧,并添加到水平布局中
spacerItem = QSpacerItem(300, 20)
hBoxLayout.addSpacerItem(spacerItem)
pushButton2 = QPushButton("按钮2")
hBoxLayout.addWidget(pushButton2)
# 7.展示窗口
w.show()
# 8.进入程序的主循环并通过exit()函数确保主循环安全结束
sys.exit(app.exec())
标签:__,控件,分割,17,设置,import,分割线,QFrame
From: https://www.cnblogs.com/kurome/p/17933267.html