QT窗口透明设置

Qt编程—去掉标题栏和设置窗口透明用法 学习Qt编程,有时候我们很想做出好看又比较炫的画面,这时就常用到qt上的一些技巧。 这里我以一个小例子来展示qt的这些技巧,此qt编程写的,如图:(去掉标题栏和设置窗口透明后)   代码实现部分: .h文件 #ifndef MAINWINDOW_H #define MAINWINDOW_H #include #include #include #include namespa 阅读详情

QT窗口透明设置

这问题折腾我一整天了,在网上搜几种方法,一一测试,然后崩溃中....

一.设置窗口的背景色
我比较懒,没用网上介绍的方法一一敲代码,而直接在qt creator 中设置palette中的window项为透明。结果得到不是理所当然的透明效果,而是一个黑色的矩形。 

二.在窗口的构造函数中使用如下代码
setAttribute(Qt::WA_TranslucentBackground, true);
结果窗口背景还是黑色的,后来才知道,前面还要加上下面这句才有效果
setWindowFlags(Qt::FramelessWindowHint);  //把窗口设置成没框架的
我是用win7环境测试的,QMainWindow--->QGLWidget--->QWidget 在我的程序中,三个窗口的父子关系就是这样的。我想让QWidget模拟三维游戏中底部的那个用户交互界面。
我把上面两行代码贴在QMainWindow中,主窗口是透明了,QWidget这个窗口也透明了还如愿地不影响其中的按钮,可中间的QGLWidget却不见了,连鼠标事件也感应不到了;
我把上面两行代码贴在QGLWidget的构造函数中,没效果;

贴在QWidget中也是一样不透明;

甚至去掉了QMainWindow,结果那QWidget的背景还是雷打不动的黑色;

那个崩溃啊,直使我想放弃QT

三.在窗口的构造函数中使用如下代码 
setWindowOpacity(0.5);
一提这函数我气就不打一处来,窗口是半透明了,可我那窗口中的按钮也被半透明了,可恨的继承,更可恨的是一嵌入到QGLWidget窗口中,就又变成讨厌的黑色矩形了。要它何用!

四.就是重载void paintEvent( QPaintEvent* ); 了
在这个函数内我用QPainter 又是刷透明通道,又是画透明图片,结果那QWidget的背景该怎么黑就怎么黑,就是不透明。

连styleSheet都用上了,还是没能解决问题。
到论坛上提问没人答我,百度谷歌都搜了一天了,都是些重复的内容。我实在没辙了,
谁来告诉我到底哪个环节出错了?
【QT6】QT6实现UI窗口无边框,设置背景颜色,设置透明度 UI窗口无边框,背景颜色这是,透明度设置 阅读详情

相关推荐

Qt之窗口背景设置为透明

this->setAttribute(Qt::WA_TranslucentBackground);

君莫笑的博客 2258

QT 窗体透明

【引用】Qt中设置窗口的透明   Qt |字号 订阅 本文引用自/yl守望/love《Qt中设置窗口的透明》一、将Qt窗口嵌入到桌面中。 声明一个最简单的类: class Dialog : public QDialog {  Q_OBJECT public:  Dialog(QWidget *parent = 0);  ~Dialog(

专注的力量 1万+

【Qt】设置窗口透明度

1、使用setWindowOpacity设置透明度 setWindowOpacity(0.5); 设置完成会使窗体、标题栏、子控件都透明 2、使用样式表qss设置窗体透明 dlg->setStyleSheet("QDialog{background-color: rgba(255, 0, 0, 0.5);}"); wgt-&amp

郭老二 1万+

qt 子窗体透明 不受父窗体背景影响 播放视频

使用qt版本 qt5.11.0 windows10 平台 设置子窗体透明的方式很多。但是很多方式在有些情况下效果却很糟。 如果父窗体上播放视频操作,或其他有修改窗体swichbuffer的行为时,透明效果需要做点小操作。 1、首先如果希望透明子窗体要时时刻刻在父窗体上显示,需要继承父窗体指针,再调用raise()。 2、让父窗体不影响子窗体,需要修改窗体flag值。Qt窗体类型有三种,一种是...

qiushangren的专栏 8878

Docker新手必看:解决‘Unable to find image’错误的完整指南

本文针对Docker新手常见的‘Unable to find image’错误,提供了完整的排查与解决指南。文章深入剖析了权限不足、网络连接失败、Docker服务未运行等核心原因,并给出了将用户加入docker组、配置镜像加速器等实用解决方案,帮助读者彻底理解并解决镜像拉取问题。

weixin_29230901的博客 244

别再傻傻分不清了!一文搞懂电机里的‘旋变’和‘编码器’到底有啥区别

本文深度解析电机位置传感器中旋转变压器(旋变)与编码器的核心区别,包括工作原理、精度对比及环境适应性。通过实测数据和典型应用场景,帮助工程师在工业机器人、新能源汽车电机等关键领域做出精准选型决策,提升系统可靠性和控制精度。

weixin_28689507的博客 504

QT设置透明窗体

/窗口透明,隐藏标题,实现透明效果。//窗口透明,部件不透明。//设置窗口的不透明度0.5,设置整个窗口与部件的透明度。//创建标签控件的阴影效果。//标签部件使用阴影效果。//设置阴影模糊半径。

Txwtech 454

直流电机双闭环调速系统MATLAB仿真

Chopper-Fed DC Motor Drive This example shows a Chopper-Fed DC Motor Drive. Description The DC motor is fed by the DC source through a chopper which consists of GTO thyristor and free-wheeling diode ...

飞行动力的博客 2万+

QWidget设置背景颜色为透明,结果背景为黑色的问题

qwidget设置背景颜色为透明,结果背景为黑色的问题 本人搜了几种方法,试了之后,都没能实现该效果,最终机缘巧合之下,试验成功了,记录一下! 只需要在需要透明的窗口构造函数中,写如下代码,并将之前测试的透明代码去点即可: setWindowFlags(Qt::FramelessWindowHint | Qt::Tool); setAttribute(Qt::WA_TranslucentBackground); ...

lsc19971931的博客 5843

从零实现反激式电源仿真:LTspice高级应用实例

深入解析反激式开关电源的建模与仿真过程,利用LTspice实现从零搭建电路,精准验证电路仿真效果,提升电源设计效率与可靠性。

weixin_36149538的博客 1899

DTS中video-interfaces接口详解

视频数据管道通常由外部设备组成,例如通过I2C、SPI或UART总线控制的摄像机传感器,以及SoC内部IP块(包括视频DMA引擎和视频数据处理器)。 SoC内部块由DT节点描述,与其他SoC块放置方式类似。外部设备表示为它们各自总线控制器节点的子节点,例如I2C。 所有视频设备上的数据接口都由它们的子“port”节点描述。端口的配置取决于参与数据传输的其他设备,并由“endpoint”子节...

龙图腾的博客 9008

Qt窗口透明设置与窗口的父子关系

QPainter painter(ui->widget_pen); painter.fillRect(ui->widget_pen->rect(), QColor(0, 255, 0, 50));

yejin_tianming的博客 2006

74、光谱成像在电子内窥镜及色彩理论中的应用

本文探讨了光谱成像在电子内窥镜中的应用及其与色彩理论的深度融合。通过分析FICE技术、色彩再现模型及胃黏膜光谱测量,展示了光谱信息在提升医学诊断准确性方面的潜力。同时,系统阐述了颜色的物理属性、标准表示方法、同色异谱现象、颜色测量技术(密度法与比色法)以及CIELAB等均匀颜色空间的构建原理。结合流程图与对比表格,梳理了从光信号获取到颜色处理的完整路径,并展望了人工智能与新型视觉模型在未来医疗成像与色彩科学中的发展方向。

g2h3i4j5的博客 153

Qt设置窗口透明,置顶

设置窗口透明度,子控件也会透明 设置窗口完全透明,子控件存在,并且不透明(标题栏去除) QT 去掉标题栏和去掉标题栏后移动窗口 置顶:setWindowFlags(Qt::WindowStaysOnTopHint); 局部透明,未编辑,自行百度 一、设置窗口透明度,子控件也会透明 setWindowOpacity(1);设置窗口透明度,1不透明,0透明。子控件也会透明 使用 paintE...

I have sacrificed everything for Sankarea 2418

2026年软考高级网络规划设计师第三版备考笔记

删除了所有已退出主流应用、行业淘汰的技术内容,如 HDLC、xDSL、WiMAX、HSRP/GLBP 等,让教材内容更聚焦当下一线网络工程实际场景,剔除无效考点。

鹿鸣天涯 1216

[Dify实战] 多轮对话状态管理:上下文保持与槽位填充

本文探讨了基于LLM的对话应用中多轮对话状态管理的核心挑战与解决方案。文章指出,单纯的"能聊"远远不够,关键在于建立有效的状态管理机制,包括上下文保持和槽位填充两大核心能力。通过Dify实战视角,详细阐述了如何设计工程化落地方案:采用混合策略的上下文管理(窗口+摘要+关键槽位)、JSON Schema强约束的槽位抽取、统一状态对象存储、冲突处理机制和优化追问策略。文章特别强调,合理的状态管理能将"聊天"转化为"可执行的业务流程",避免模型成为&qu

技术小甜甜:传播可落地技术,帮助个人和企业降低解决真实场景问题的成本 240

Qt窗口设置半透明

1.从MainWindows继承的窗口 直接用setWindowOpacity(0.9); 参数为透明度,范围0-1。 2.程序中弹出的窗口,继承自QDialog,要使用无边框窗口设置了FramelessWindowHint属性,但是发现FramelessWindowHint属性和透明度函数有冲突,无法设置成功。 解决方法:setWindowFlags(Qt::FramelessWindowHint | Qt::Dialog); 多添加一个Dialog属性,在设置setWindowOpacity透明度即可

u014734032的博客 1629

ssm框架搭建

这个是一个在idea上成功跑起来的ssm框架项目,保存在这里方便以后使用直接下载

Qt设置父窗口,透明度不起作用

setWindowOpacity不起作用 Qt设置父窗口,透明度不起作用

风起时~微凉的博客 2880

IEM模型,地表粗糙度模拟

利用微波反演土壤水分时候,利用IEM模型可以实现对随机地表的模拟

TMS_WebGMaps_1.9.8.0_Full_Source

TMS_WebGMaps_1.9.8.0_Full_Source 全源码 delphi cbuilder

qt 设置窗口半透明

<br />1. 在构造函数中:<br />setWindowFlags(Qt::FramelessWindowHint);<br />setAttribute(Qt::WA_TranslucentBackground);<br /> <br />2. 在paintEvent()中:<br />QPixmap pixmapTop("xxx.xxx");    //xxx是背景图片(可以是圆角的)<br />pixmapTop.setMask(pixmapTop.createHeuristicMask());

我的一亩二分地 4246

文档:亲测可用解决vnc灰屏,黑屏,鼠标大黑叉情况

主要解决vnc-viewer灰屏,黑屏,鼠标大黑叉等现象,详细见文档。

【QT小记】设置窗口背景透明

// 窗口无边框 setWindowFlags(this->windowFlags() | Qt::FramelessWindowHint); // 设置窗口背景透明 (需要设置窗口为无边框的才能实现背景透明,否则背景为黑色) setAttribute(Qt::WA_TranslucentBackground);

林柒Sevenlin随记 2900

Qt设置无边框窗口,窗口透明度

两行代码搞定,直接上代码 this->setWindowFlags(Qt::Window | Qt::FramelessWindowHint | Qt::WindowStaysOnTopHint|Qt::Tool|Qt::X11BypassWindowManagerHint); this->setWindowOpacity(0.7); //透明度

青城山小和尚 6151

QT设置无边框窗口和透明窗口

前言 有时候我们想做出比较好看的界面,这时候就要去掉qt原来的窗口标题栏。 1. 去除边框和使窗口透明 //去边框 同时保留窗口原有的属性 setWindowFlags(Qt::FramelessWindowHint | windowFlags() ); //把窗口背景设为透明 setAttribute(Qt::WA_TranslucentBackground); 2. 窗口置顶功能 setWindowFlags(Qt::WindowStaysOnTopHint); ...

gmq_syy的博客 6189

QT 设置窗口透明度

/** 改变窗口透明度 */ QMenu* menu = new QMenu(this); QAction* action = new QAction("transparence 10%", menu); action->setData(1); menu->addAction(action); action = new QAction("transparence 20%", men

w823626691的专栏 678

Qt设置主窗口背景透明引发的问题解决

设置背景透明的方法

happi_er的博客 1819

Qt设置窗口背景透明

QPalette pal = palette();     pal.setColor(QPalette::Background, QColor(0x00,0xff,0x00,0x00));     setPalette(pal); Qt::WA_TranslucentBackground

xingzheouc的专栏 1438
上一篇: Qt中拖拽窗口以改变位置的实现
下一篇: Qt中添加背景图片的方法(转)
lixingworkCCC
博客等级 码龄15年 24粉丝 5原创
评论 4
成就一亿技术人!
拼手气红包6.0元
还能输入1000个字符
 
 条评论被折叠 查看
添加红包

请填写红包祝福语或标题

个

红包个数最小为10个

元

红包金额最低5元

当前余额3.43元 前往充值 >
需支付:10.00元
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付元
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

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

余额充值