pyqt5 设置窗体透明控件不透明的操作

 更新时间:2021年03月09日 11:49:40   作者:氼焺  
这篇文章主要介绍了pyqt5 设置窗体透明控件不透明的操作,具有很好的参考价值,希望对大家有所帮助。一起跟随小编过来看看吧

我就废话不多说了,大家还是直接看代码吧~

// 窗体透明,控件不透明
self.setWindowFlags(Qt.FramelessWindowHint | Qt.Tool)
self.setAttribute(Qt.WA_TranslucentBackground)

补充:【解决问题】pyqt5设置窗体透明,而上面的控件不透明

在做软件的时候想把QWidget设置成透明的,我在网上搜了各种答案:

有说设置qss背景属性的:background: transparent; 但是这样就全透明了。如图3

还有qss里设置 background:rgba(0,0,0,0.2)也是一样的,还是会完全透明

网上查的这些代码也没有用:

setWindowOpacity(0.7);
setAttribute(Qt::WA_TranslucentBackground, true);
setAttribute(Qt::WA_TranslucentBackground);

有说用QGraphicsOpacityEffect设置的:大事难事这样整个widget上的控件也透明了,如图2。

op = QtWidgets.QGraphicsOpacityEffect()
op.setOpacity(0.5)
你的控件.setGraphicsEffect(op)
你的控件.setAutoFillBackground(True)

图一(原图) 图二 图三

但是我希望工具栏wiget自身透明,而上面的控件保持原状。吐槽:真是奇了怪了,qss内置了那没多css的属性,怎么会没有一个不透明度的属性呢???

于是我想着要不要重叠两个widget,下面一个按照下面的方法半透明,上面的变成全透明然后再放各种控件,理论上应该可行,但是这样太麻烦了我迟迟没动手。

过了一天以后,我灵光一闪!我直接把widget的背景上面放一个半透明的图片不就可以了吗!!我真是个小机灵鬼! 于是我打开ps弄了一张透明度为50%的白色图片保存成png模式,然后qss里面设置一下:

#Tool_Widget{
 border-radius: 10px;
 border-image: url(img/toolbg.png)
} 

搞定!!!!快夸我!!!

以上为个人经验,希望能给大家一个参考,也希望大家多多支持脚本之家。如有错误或未考虑完全的地方,望不吝赐教。

相关文章

  • 基于Python实现高效PPT转图片工具

    基于Python实现高效PPT转图片工具

    在日常工作中,PPT是我们常用的演示工具,但有时候我们需要将PPT的内容提取为图片格式以便于展示或保存,所以本文将用Python实现PPT转PNG工具,希望对大家有所帮助
    2025-04-04
  • 在Python中操作文件之read()方法的使用教程

    在Python中操作文件之read()方法的使用教程

    这篇文章主要介绍了在Python中操作文件之read()方法的使用教程,是Python入门学习中的基础知识,需要的朋友可以参考下
    2015-05-05
  • Python3匿名函数用法示例

    Python3匿名函数用法示例

    这篇文章主要介绍了Python3匿名函数用法,结合实例形式分析了Python3匿名函数的概念、功能、使用方法及相关操作注意事项,代码中备有较为详尽的注释说明便于理解,需要的朋友可以参考下
    2018-07-07
  • python中的yield使用方法

    python中的yield使用方法

    这篇文章主要介绍了python中的yield使用方法,需要的朋友可以参考下
    2014-02-02
  • Python中的类与类型示例详解

    Python中的类与类型示例详解

    这篇文章主要给大家介绍了关于Python中类与类型的相关资料,文中通过示例代码介绍的非常详细,对大家学习或者使用Python具有一定的参考学习价值,需要的朋友们下面来一起学习学习吧
    2019-07-07
  • Python实现遗传算法(二进制编码)求函数最优值方式

    Python实现遗传算法(二进制编码)求函数最优值方式

    今天小编就为大家分享一篇Python实现遗传算法(二进制编码)求函数最优值方式,具有很好的参考价值,希望对大家有所帮助。一起跟随小编过来看看吧
    2020-02-02
  • 详解使用 pyenv 管理多个版本 python 环境

    详解使用 pyenv 管理多个版本 python 环境

    本篇文章主要介绍了详解使用 pyenv 管理多个版本 python 环境,小编觉得挺不错的,现在分享给大家,也给大家做个参考。一起跟随小编过来看看吧
    2017-10-10
  • Matplotlib使用字符串代替变量绘制散点图的方法

    Matplotlib使用字符串代替变量绘制散点图的方法

    这篇文章主要介绍了Matplotlib使用字符串代替变量绘制散点图的方法,文中通过示例代码介绍的非常详细,对大家的学习或者工作具有一定的参考学习价值,需要的朋友们下面随着小编来一起学习学习吧
    2020-02-02
  • 基于Django signals 信号作用及用法详解

    基于Django signals 信号作用及用法详解

    这篇文章主要介绍了基于Django signals 信号作用及用法详解,具有很好的参考价值,希望对大家有所帮助。一起跟随小编过来看看吧
    2020-03-03
  • Flask实现异步执行任务

    Flask实现异步执行任务

    在一些开发中,可能会遇到需要长时间处理的任务,此时就需要使用异步的方式来实现,本文就介绍了Flask实现异步执行任务的方法,感兴趣的可以了解一下
    2021-05-05

最新评论