Qt+树莓派4B窗口半透明效果实现

news2024/10/7 8:31:14

文章目录

  • 前言
  • 一、窗口半透明,窗口部件不透明
    • 1、构造函数中的设置
    • 2、paintEvent
    • 3、效果
    • 4、树莓派4B配置
    • 5、最终效果


前言

  在树莓派4B下,使用Qt开发窗口半透明而窗口部件不透明效果时,发现窗口没能正常实现半透明效果,而是显示纯黑色背景。同样的代码在win10或mac os下面却可以。
  下面,以窗口半透明,窗口部件不透明为例,介绍树莓派4B上Qt的实现。

一、窗口半透明,窗口部件不透明

1、构造函数中的设置

    setAttribute(Qt::WA_TranslucentBackground, true);
    this->setAutoFillBackground(true);
    this->setWindowFlags(Qt::FramelessWindowHint);

2、paintEvent

void Dialog::paintEvent(QPaintEvent *event)
{
    QPainter painter(this);
    painter.fillRect(this->rect(), QColor(0, 0, 0, 200));
    return QDialog::paintEvent(event);
}

3、效果

在这里插入图片描述

4、树莓派4B配置

查询qt文档得知,如下内容:
X11(linux):此特性依赖于能提供支持ARGB视觉效果和复合式视窗管理的X服务的功能开启。
Windows:此控件需要设置窗口标志Qt::FramelessWindowHint才能开启透明功能。
所以,我们推测,可能的原因是树莓派4B自带的桌面不支持窗口透明效果。

通过如下两步,即可实现半透明效果,命令如下:

1、安装xcompmgr sudo apt-get install xcompmgr
2、设置xcompmgr自动启动

sudo nano /etc/xdg/lxsession/LXDE-pi/autostart
@xcompmgr -C -c -o 0.5 -l -19 -t -10 -r 14 -f -O 0.05 -I 0.05

5、最终效果

在这里插入图片描述

本文来自互联网用户投稿,该文观点仅代表作者本人,不代表本站立场。本站仅提供信息存储空间服务,不拥有所有权,不承担相关法律责任。如若转载,请注明出处:http://www.coloradmin.cn/o/1123989.html

如若内容造成侵权/违法违规/事实不符,请联系多彩编程网进行投诉反馈,一经查实,立即删除!

相关文章

Windows 95 的辉煌诞生历史

1992 年 2 月,Windows 3.1 的研发即将结束,而 Windows 团队正忙得不亦乐乎地计划他们的下一盘大棋。到了 3 月 5 日,他们终于悠哉悠哉地敲定了战略大计:横扫桌面、笔记本、移动设备以及时髦的触控笔设备。至于那些高大上的服务器和…

基于springboot+vue网上书城系统53

大家好✌!我是CZ淡陌。一名专注以理论为基础实战为主的技术博主,将再这里为大家分享优质的实战项目,本人在Java毕业设计领域有多年的经验,陆续会更新更多优质的Java实战项目,希望你能有所收获,少走一些弯路…

Qt使用一行代码轻松改变按钮图标颜色

Qt使用一行代码轻松改变QPushButton QToolButton图标颜色 需求:Qt程序主界面改变主题颜色时,例如白色背景色切换为深色模式,背景会变成深色。通常按键的图标会使用黑色,这时应该将图标改为白色系,应该轻松快捷去实现&…

【Java开发实战攻关】「JPA技术专题」带你一同认识和使用JPA框架

JPA技术专题 一、JPA 介绍1、JDBC2、JPA是什么 二、搭建 JPA 环境三、JPA 注解四、JPA API1、缓存2、EntityManager3、API 五、关联关系映射1、一对一映射2、单向一对多3、单向多对一4、双向一对多及多对一5、双向多对多 六、JPQL1、createQuery2、createNativeQuery 一、JPA 介…

浪涌保护器SPD产品上的8/20波形与10/350波形的含义

浪涌保护器(SPD)是用于保护电子设备免受电源浪涌或瞬态电压影响的重要装置,我们在选购SPD相关产品时,会发现在其防雷能力放电电流KA后面还有一个重要参数——8/20us或10/350us,这两个参数究竟表示什么意思呢&#xff1…

云服务的划分IaaS,PaaS,SaaS 的区别

云服务只是一个统称,可以分成三大类。 三部分的命名: IaaS:基础设施服务,Infrastructure-as-a-servicePaaS:平台服务,Platform-as-a-serviceSaaS:软件服务,Software-as-a-service

COUNT(*) OVER (PARTITION BY ...)窗口函数——在每一行上执行聚合操作

它用于在查询结果中执行聚合操作,而不会影响查询的分组行数,同时在每个分组内进行计数。 COUNT(): 这表示要计算在窗口内的行数, 代表计算所有行。OVER: 这引入了窗口函数的定义,它告诉数据库引擎在什么样的窗口内执行计数。(PAR…

系列十三、Redis的哨兵机制

一、概述 Sentinel(哨兵)是Redis的高可用解决方案,由一个或者多个Sentinel实例组成集群,可以监视任意多个主服务器,以及这些服务器下属的所有从服务器,并在被监视的主服务器下线或者宕机时,自动…

python输出小数控制的方法

大家早好、午好、晚好吖 ❤ ~欢迎光临本文章 如果有什么疑惑/资料需要的可以点击文章末尾名片领取源码 一、要求较小的精度 将精度高的浮点数转换成精度低的浮点数。 1.round()内置方法 round()不是简单的四舍五入的处理方式。 >>> round(2.5) 2 >>> ro…

AD9371 官方例程HDL详解之JESD204B TX侧时钟生成 (二)

AD9371 系列快速入口 AD9371ZCU102 移植到 ZCU106 : AD9371 官方例程构建及单音信号收发 ad9371_tx_jesd -->util_ad9371_xcvr接口映射: AD9371 官方例程之 tx_jesd 与 xcvr接口映射 AD9371 官方例程 时钟间的关系与生成 : AD9371 官方…

Promise笔记-同步回调-异步回调-JS中的异常error处理-Promis的理解和使用-基本使用-链式调用-七个关键问题

Promise笔记 1. 预备知识1.1 实例对象与函数对象1.2 两种类型的回调函数1. 同步回调2. 异步回调 1.3 JS中的异常error处理1. 错误的类型2. 错误处理(捕获与抛出)3. 错误对象 2.Promise的理解和使用2.1 Promise是什么1.理解Promise2.Promise 的状态3. Pro…

一种融合偶然和认知不确定性的贝叶斯深度学习RUL框架

_原文: _《《A Bayesian Deep Learning RUL Framework Integrating Epistemic and Aleatoric Uncertainties》 _作者__: _Gaoyang Lia,Li Yangb,Chi-Guhn Leec,Xiaohua Wangd,Mingzhe Ronge _作者单位&am…

selenium元素定位之xpath

一、找父级节点parent xpath://span[text()保存]/parent::button 说明:先找到span标签,再找到父级button 一、找同级的上方标签preceding-sibling xpath://span[text()保存]/parent::button/preceding-sibling::button[1] 说明…

找不到mfc140u.dll无法继续执行此代码的5个修复方法分享

是使用计算机的过程中,我们经常会遇到各种各样问题,其中丢失“mfc140u dll”(动态链接库)是最常见的一种。DLL文件是一种可在多个程序之间共享的代码库,它可以被应用程序在运行时动态加载和卸载。而“mfc140u dll”则是…

Flink实时写入Apache Doris如何保证高吞吐和低延迟

随着实时分析需求的不断增加,数据的时效性对于企业的精细化运营越来越重要。借助海量数据,实时数仓在有效挖掘有价值信息、快速获取数据反馈、帮助企业更快决策、更好的产品迭代等方面发挥着不可替代的作用。 在这种情况下,Apache Doris 作为一个实时 MPP 分析数据库脱颖而出,…

小程序开发——小程序的视图与渲染

1.视图与渲染过程 基本概念: 视图层由WXML页面文件和样式文件WXSS共同组成。事件是视图层和逻辑层沟通的纽带,用户操作触发事件后可通过同名的事件处理函数执行相应的逻辑,处理完成后,更新的数据又将再次渲染到页面上。 WXML页面…

通过流量安全分析发现主机异常

主机异常分析在计算机系统中具有重要意义。以下是主机异常分析的几个关键点: 1、检测安全威胁:主机是计算机系统的核心组件,通过对主机异常进行分析,可以快速检测到潜在的安全威胁,如恶意软件、病毒感染、黑客入侵等。…

python中可变类型与不可变类型详细介绍

嗨喽,大家好呀~这里是爱看美女的茜茜呐 一.可变类型与不可变类型的特点 1.不可变数据类型 不可变数据类型在第一次声明赋值声明的时候, 会在内存中开辟一块空间, 用来存放这个变量被赋的值, 而这个变量实际上存储的, 并不是被赋予的这个值, 而是存放这个值所在空…

Python获取本机IP地址的三种方式

目录 1、使用专用网址 2、使用自带socket库 3、使用第三方netifaces库 1、使用专用网站 获取的是公网IP。 网址:http://myip.ipip.net 代码: import requestsres requests.get(https://myip.ipip.net, timeout5).textprint(res)具体可以类似这样&#x…

IP-guard客户端WINDOWS的打包方式

IP-guard的打包方式: 第一种: