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:单选按钮控件

相关推荐
点心的游戏开发世界8 小时前
GDScript 入门笔记(十一):Lambda 与匿名函数
开发语言·笔记·游戏引擎·godot
摇滚侠9 小时前
《SpringBoot 3:入门与应用实战》第 12 章 JDBC 与事务 使用 JdbcTemplate 阅读笔记 32
spring boot·笔记·后端
鱼子星_11 小时前
【C++】继承和多态(上)
c++·笔记
xian_wwq11 小时前
【学习笔记】深度认知系列-第14讲 端侧AI崛起——为什么AI正在从云端走向本地
人工智能·笔记·学习
策案案案13 小时前
YOLO: 将AI Agents嵌入到IntelliJ IDEA
java·大数据·人工智能·笔记·yolo·microsoft·intellij-idea
啵啵啵鱼15 小时前
DS-顺序表
java·数据结构·笔记·后端·链表·obsidian
xian_wwq16 小时前
【学习笔记】深度认知系列-第13讲AI Agent时代到来——从“回答问题”到“执行任务”
人工智能·笔记·学习
程序猿炎义16 小时前
【llm-algo-leetcode学习笔记】量化优化手段
笔记·学习
xian_wwq17 小时前
【学习笔记】深度认知系列- 第15讲 AI算力战争——GPU、光通信与太空数据中心
笔记·学习
雨田言炎17 小时前
2026/9/5 C复习笔记(一)
c语言·笔记