PySide6/PyQT学习笔记(很杂)

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和nuitka

GUI编程常用类:

  • 坐标点类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:单选按钮控件

相关推荐
Hejjon1 小时前
SpringBoot 整合 SQLite 数据库
笔记
西洼工作室3 小时前
【java 正则表达式 笔记】
java·笔记·正则表达式
初学者7.4 小时前
Webpack学习笔记(2)
笔记·学习·webpack
街 三 仔4 小时前
【QSS样式表 - ⑤】:QLineEdit控件样式
pyside6·pyqt5·qtdesigner·qss
新手上路狂踩坑5 小时前
Android Studio的笔记--BusyBox相关
android·linux·笔记·android studio·busybox
stm 学习ing6 小时前
HDLBits训练3
c语言·经验分享·笔记·算法·fpga·eda·verilog hdl
尘觉6 小时前
算法的学习笔记—扑克牌顺子(牛客JZ61)
数据结构·笔记·学习·算法
bohu837 小时前
sentinel学习笔记1-为什么需要服务降级
笔记·学习·sentinel·滑动窗口
utmhikari8 小时前
【Python随笔】如何用pyside6开发并部署简单的postman工具
python·postman·pyqt·pyside6·桌面工具
初学者7.8 小时前
Webpack学习笔记(3)
笔记·学习·webpack