QGroupBox样式:科技+机甲
QGroupBox {
border: 2px solid #333; /* 深色边框,类似金属质感 */
border-radius: 8px; /* 轻微的圆角 */
background-color: #222; /* 暗色背景,模拟机甲内部或科技界面 */
color: #fff; /* 字体颜色为白色,提高可读性 */
margin-top: 20px; /* 顶部外边距 */
}
QGroupBox::title {
subcontrol-origin: margin;
subcontrol-position: top left;
padding: 0 5px;
background-color: #444; /* 标题背景稍微亮一些,以突出显示 */
color: #ddd; /* 标题文字颜色 */
font-weight: bold; /* 加粗标题 */
border-top-left-radius: 8px; /* 左上角圆角 */
border-top-right-radius: 8px; /* 右上角圆角 */
}
/* 当鼠标悬停在 QGroupBox 上时的样式 */
QGroupBox:hover {
border-color: #666; /* 鼠标悬停时边框颜色变化 */
background-color: #333; /* 轻微加深背景色 */
}
/* 如果需要,可以为 QGroupBox 内的控件添加样式 */
QGroupBox QPushButton {
background-color: #555; /* 按钮背景色 */
color: #ccc; /* 按钮文字颜色 */
border: 1px solid #777; /* 按钮边框 */
border-radius: 4px; /* 按钮圆角 */
}
QGroupBox QPushButton:hover {
background-color: #666; /* 鼠标悬停时按钮背景色 */
}
QGroupBox QPushButton:pressed {
background-color: #444; /* 按钮按下时的背景色 */
}
1、控件的Tab顺序
2、控件之间的伙伴关系
py文件打包生成exe文件,工具有py2exe,pyinstaller,cx_Freeze和nuitkaGUI编程常用类:
- 坐标点类QPoint和QPointF
- 尺寸类QSize和QSizeF
- 矩形框类QRect和QRectF
- 页边距类QMargins和QMarginsF
- 字体类QFont
- 颜色类QColor
- 调色板类QPalette
- 图像类
- QPixmap
- save(str,format=None,quality=-1)
- load(str,format=None,flags=QT.AutoColor)
- scaled()
- QImage
- QPicture
- QBitmap
- 图标类QIcon
- addFile()
- addPixmap()
- 光标类QCursor
- 地址类QUrl
QPoint
类的常用方法和属性包括:
x()
: 返回点的 x 坐标。y()
: 返回点的 y 坐标。setX(int x)
: 设置点的 x 坐标。setY(int y)
: 设置点的 y 坐标。rx()
: 返回点的 x 坐标(与x()
相同,但返回的是qreal
类型,对于大多数用途来说,这与int
没有区别)。ry()
: 返回点的 y 坐标(与y()
相同,也是qreal
类型)。isNull()
: 判断点是否为空(即 x 和 y 坐标是否都为 0)。manhattanLength()
: 返回点到原点的曼哈顿距离(即沿网格线从原点到点的最短路径)。__add__(QPoint)
: 与另一个QPoint
相加,得到一个新的QPoint
,其坐标是原坐标与给定坐标的和。__sub__(QPoint)
: 与另一个QPoint
相减,得到一个新的QPoint
,其坐标是原坐标与给定坐标的差。__mul__(float)
: 将点的坐标与给定的浮点数相乘,得到一个新的QPoint
。__rmul__(float)
: 与__mul__
相同,但允许在左侧使用浮点数进行乘法。
自定义光标:
from PySide6.QtGui import QCursor, QPixmap
# 加载图片
pixmap = QPixmap("path/to/your/cursor.png")
# 创建一个自定义光标
cursor_custom = QCursor(pixmap)
如果GUI界面获取数值型数据,不要用QLable、QLineEdit、QTextEdit和QPlianTextEdit,可以选择使用数字输入控件QSpinBox和QDoubleSpinBox更方便一点。下拉列表框控件QComboBox可以最大限度压缩GUI界面空间。如果数据有一定的范围,可以使用滚动条控件QScrollBar和滑块控件QSilder。仪表盘控件QDial和滚动条滑块类似。进度条控件QPeocessBar可以缓解用户等待焦虑。
QPushButton:按压按钮控件QCommandLinkButton:命令连接按钮控件
QCheckBox:复选框按钮控件
QRadioButton:单选按钮控件