【Python小知识 - 5】:QGraphicsDropShadowEffect设置按钮阴影

QGraphicsDropShadowEffect介绍

QGraphicsDropShadowEffect 是 PyQt 中的一个类,它可以在图形对象周围产生阴影效果,常用于美化界面。通过调整阴影的偏移、颜色、模糊度等参数,可以实现不同风格的阴影效果。同时,该类还支持设置阴影效果的 QRectF 范围,方便进行大小调整

案例

当鼠标移动到按钮时,出现浅蓝色阴影,离开时阴影消失。

from PyQt5.QtWidgets import QApplication, QPushButton, QVBoxLayout, QWidget, QGraphicsDropShadowEffect
from PyQt5.QtGui import QColor
import sys


class PushButton(QPushButton):
    def __init__(self, parent=None):
        super().__init__(parent)

        self.setText('按钮')

    # 鼠标进入按钮时显示阴影
    def enterEvent(self, evt):
        # 创建QGraphicsDropShadowEffect对象
        shadow = QGraphicsDropShadowEffect()
        # 设置阴影颜色为红色
        shadow.setColor(QColor(62, 134, 160))
        # 设置阴影的偏移量
        shadow.setOffset(20, 0)	# (x, y)
        # 设置阴影的模糊半径
        shadow.setBlurRadius(15)
        # 将阴影应用于按钮
        self.setGraphicsEffect(shadow)

    # 鼠标离开按钮时取消阴影
    def leaveEvent(self, evt):
        self.setGraphicsEffect(None)  # 将 QGraphicsDropShadowEffect 从按钮中移除,达到去除阴影的效果

if __name__ == '__main__':
    app = QApplication(sys.argv)

    window = QWidget()
    window.resize(200, 200)

    button = PushButton(window)
    button.move(50, 50)

    window.show()
    sys.exit(app.exec_())

鼠标移动到按钮

在这里插入图片描述

鼠标离开按钮

在这里插入图片描述

  • 0
    点赞
  • 0
    收藏
    觉得还不错? 一键收藏
  • 打赏
    打赏
  • 0
    评论

“相关推荐”对你有帮助么?

  • 非常没帮助
  • 没帮助
  • 一般
  • 有帮助
  • 非常有帮助
提交
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包

打赏作者

街 三 仔

你的鼓励是我创作的最大动力~

¥1 ¥2 ¥4 ¥6 ¥10 ¥20
扫码支付:¥1
获取中
扫码支付

您的余额不足,请更换扫码支付或充值

打赏作者

实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值