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

相关推荐
hhcgchpspk18 小时前
汇编语言传递数据和地址的误区
汇编·笔记·nasm·masm
智者知已应修善业18 小时前
【51单片机2个外部中断显示中断历时,初始化8左移3位共阳数码管】2024-6-6
c++·经验分享·笔记·算法·51单片机
tq108619 小时前
OperationSequence DSL 2.1 语法规范
笔记
智者知已应修善业21 小时前
【用74LS151的实现(16序列信号发生器)】2024-6-1
驱动开发·经验分享·笔记·硬件架构·硬件工程
是上好佳佳佳呀1 天前
【LangChain|Day04】RAG 全流程基础笔记:Document 、 Loader 和 Splitter
笔记·langchain·rag
俊男无期1 天前
【无标题】
笔记·其他
m0_719084111 天前
es我的笔记
大数据·笔记·elasticsearch
hhcgchpspk1 天前
xss漏洞学习笔记
笔记·学习·网络安全·xss
nnsix1 天前
Unity 动态批处理、静态批处理、GPU Instaning、SRP Batcher 笔记
笔记·unity·单一职责原则
情绪总是阴雨天~1 天前
OCR光学字符识别技术:完整原理与实战学习笔记
笔记·学习·ocr