前往小程序,Get更优阅读体验!
立即前往
首页
学习
活动
专区
工具
TVP
发布
社区首页 >专栏 >PyQt5 技巧篇-按钮隐藏并保留位置,设置按钮的可见度,设置按钮透明度

PyQt5 技巧篇-按钮隐藏并保留位置,设置按钮的可见度,设置按钮透明度

作者头像
小蓝枣
发布2020-09-22 11:37:34
3.3K0
发布2020-09-22 11:37:34
举报
文章被收录于专栏:CSDN博客专家-小蓝枣的博客
设置按钮可见度为0

每种控件都有3种设置可见度为0的方法,下面来拿按钮的来举例了。

代码语言:javascript
复制
# 标准的隐藏
# 方法一:
self.pushButton_3.hide()
# 方法二:
self.pushButton_3.setHidden(True)
# 方法三:
self.pushButton_3.setVisible(False)

如果是绝对布局的话,隐藏当然不会影响位置的变化,但大家都知道绝对布局有很多缺点,比如改动的成本大,灵活性不高,适应能力很差等等。 我们习惯嵌套在一些横向和纵向布局里,但是这种布局只要是里面的控件不可见,就相当于没有了,所以会重新分配各个组件的位置,这样我们的整体布局就会有所变化。

设置按钮透明度,保留原位置

透明和不可见可不一样,透明是一种颜色。

代码语言:javascript
复制
op = QtWidgets.QGraphicsOpacityEffect()
# 设置透明度的值,0.0到1.0,最小值0是透明,1是不透明
op.setOpacity(0)
self.pushButton_3.setGraphicsEffect(op)

注:设置透明后,控件虽然看不见,但是点击那个位置还是会触发原控件绑定的事件。 如果想追求完美的话,可以在设置透明的同时,解除那个控件绑定的事件。

还提供一种思路,比如,我设置布局里每个按钮自己单独包裹一层布局,可以设置布局的最小宽度和高度,这样标准的隐藏的按钮看不到按钮了,但是仍然还保留着位置的,因为这里还有一个有最小值的布局给占着位置呢!哈哈,怎么样!

实例展示

如图,我想隐藏左边的录制脚本按钮。 左边的这组按钮嵌套在一个横向布局里。

这是设置可见度为0的效果,发现布局已经变了。

这个是设置了透明度为0.5的半透明状态

这个是设置透明度为0的全透明状态,发现布局没有变化。

本文参与 腾讯云自媒体同步曝光计划,分享自作者个人站点/博客。
原始发表:2019/01/23 ,如有侵权请联系 cloudcommunity@tencent.com 删除

本文分享自 作者个人站点/博客 前往查看

如有侵权,请联系 cloudcommunity@tencent.com 删除。

本文参与 腾讯云自媒体同步曝光计划  ,欢迎热爱写作的你一起参与!

评论
登录后参与评论
0 条评论
热度
最新
推荐阅读
目录
  • 设置按钮可见度为0
  • 设置按钮透明度,保留原位置
  • 实例展示
领券
问题归档专栏文章快讯文章归档关键词归档开发者手册归档开发者手册 Section 归档