1.窗口整体透明,但是窗体上的控件不透明。
通过设置窗体的背景色来实现,将背景色设置为全透。
QPalette pal = palette();
pal.setColor(QPalette::Background, QColor(0x00,0xff,0x00,0x00));
setPalette(pal);
试验效果:
窗体标题栏不透明;
窗体客户区上的控件不透明,QLabel控件只是字显示,控件背景色透明;
窗体客户区完全透明。
另外从网上看到的方法:
setAttribute(Qt::WA_TranslucentBackground, true);
试验的结果是类似于上面的方法,但有时候窗体会被一些杂色斑点填充,未找到原因。
2.窗口及其上面的控件都半透明:
setWindowOpacity(0.7)
试验效果:窗口及控件都半透明。
3.窗口整体不透明,局部透明:
在Paint事件中使用Clear模式绘图。
void TestWindow::paintEvent( QPaintEvent* )
{
QPainter p(this);
p.setCompositionMode( QPainter::CompositionMode_Clear );
p.fillRect( 10, 10, 300, 300, Qt::SolidPattern );
}
试验效果:绘制区域全透明。如果绘制区域有控件不会影响控件。
以上实验均是基于Directfb的Qte测试。在Linux下及Windows下效果会略有不同。
比如在Windows下第3个实验,绘制区域就是一个黑窟窿,如果Window本身半透,则是Window下面的内容加上半透效果,不是全透明效果。
分享到:
相关推荐
在Qt编程环境中,窗口叠加和透明效果是一种常见的需求,尤其在设计用户界面时,比如创建一个浮动的控制面板或者信息提示层。这个场景中提到的问题是实现了一个窗口叠加在另一个窗口上,上面的窗口用于显示文本和图片...
QT雷达扫描效果是一种在2D环境中模拟雷达动态扫描的技术,常用于游戏、监控系统或导航应用等场景。本文将深入探讨如何使用QT框架实现雷达扫描效果,并关注其中的关键技术,如QConicalGradient用于绘制余晖以及窗口的...
在描述中提到的“多个示例”可能包括以下几种类型: 1. **基础3D对象**:这些示例可能展示了如何创建和管理3D几何体,如立方体、球体、锥体等,以及如何为它们添加颜色和纹理。 2. **光照和阴影**:在3D场景中,...
在本文中,我们将深入探讨如何使用QT框架创建一个数字键盘,并着重关注其中涉及的几个关键概念:QT数字键盘、透明效果、ButtonGroup以及信号和槽机制。这些知识点是QT编程中的核心元素,对于构建用户界面(UI)尤其...
QT/C++ 右下角冒泡提示窗口是一种常见的用户界面元素,它用于向用户显示临时的通知或信息,而不会干扰用户的主工作流程。这种提示窗口通常会在屏幕的右下角短暂出现,像气泡一样升起,然后自动消失,提供了一种非...
Qt提供了一种灵活的窗口管理系统,允许开发者创建各种复杂的用户界面。窗口在Qt中被称为`QWidget`,而对话框则通常是`QDialog`或`QMessageBox`的子类。在主窗体(MainWindow)上添加遮罩层,可以增强用户对对话框的...
【基于QT4的图像渐变代码】是一种在图像处理领域中的技术实现,它涉及到了Qt框架的使用,尤其是Qt4版本。Qt是一个跨平台的应用程序开发框架,广泛应用于图形用户界面和其他各种软件开发。在这个项目中,我们关注的是...
在本文中,我们将深入探讨如何在Qt框架下实现透明窗口,并让各个窗口元素(Item)管理自己的透明度。Qt是一个跨平台的C++图形用户界面应用程序开发框架,它提供了丰富的功能,包括创建复杂的用户界面和高级图形效果...
QT框架是一种广泛应用于桌面应用开发、嵌入式系统和移动平台的开源C++图形用户界面工具包。基于QT实现的悬浮窗体,主要是利用QT的灵活性和强大的图形处理能力,来创建可以在屏幕任意位置自由移动,并始终显示在其他...
在QT编程中,我们通常会用到以下几个关键组件: 1. **QApplication**:这是所有QT程序的入口点,负责管理事件循环和窗口系统。 2. **QWidget**:这是QT GUI的基础类,所有的可视元素(如按钮、文本框)都继承自...
QT模仿QQ9.0登录动画是使用Qt框架实现的一种视觉效果,它主要涉及到GUI界面设计、动画效果制作以及用户交互的实现。QQ9.0的登录动画以其独特的动态线条和窗口移动效果,为用户带来了流畅且富有科技感的体验。在Qt中...
在Qt中,透明效果主要通过`Qt::WA_TranslucentBackground`窗口属性来实现。在创建窗口类的实例时,可以通过设置这个属性来使窗口背景变得半透明或完全透明。例如: ```cpp QMainWindow window; window.setAttribute...
在本文中,我们将深入探讨如何使用Qt5框架创建一个具有动画效果的圆环状菜单。Qt是一个跨平台的C++图形用户界面应用程序开发框架,它提供了丰富的API和工具,使得开发者能够轻松构建桌面和移动应用。针对“基于Qt5...
StackWidget是Qt提供的一种方便的容器控件,用于管理多个子窗口或Widget,并在它们之间进行平滑的过渡。让我们一起探索如何为StackWidget添加动画效果,使其在切换时更具吸引力。 首先,我们需要理解Qt的动画框架。...
例如,可以使用它来改变按钮的透明度、大小或旋转角度,以实现按下的凹陷效果、悬停时的放大效果等。 3. **QGraphicsProxyWidget**: 如果你需要将标准的Qt widgets(如QPushButton)集成到QGraphicsScene中,可以...
QT(Qt)是一种跨平台的C++图形用户界面应用程序开发框架,由Trolltech公司(现为The Qt Company)开发,被广泛应用于桌面、移动和嵌入式设备的GUI设计。PYQT是Python语言对QT库的绑定,它使得Python程序员能够方便...
在Qt中,`QGraphicsEffect`类是粒子效果的基础,它提供了一种在`QGraphicsItem`上应用视觉效果的方法。`QGraphicsEffectSource`则是一个抽象基类,用于定义效果的源对象。对于粒子系统,`QParticleEffect`是核心类,...
Qt是Nokia公司推出的一种C++图形用户界面应用程序开发框架,它支持多种操作系统,包括Windows、Linux、macOS以及Android等。Qt for Android使得开发者能够使用C++和QML语言在Android设备上构建原生应用,提供了丰富...
在Qt程序中应用QSS主要有以下几种方式: - **设置全局样式**:通过调用`QApplication::setStyleSheet()`函数,可以为整个应用程序设置默认的样式表,所有继承自`QWidget`的控件都会受到样式的影响。 - **局部样式**...
2. **透明与毛玻璃效果**:"aero效果"通常指的是Windows Aero Glass特效,这种效果在界面上使用半透明或模糊背景,给人一种“毛玻璃”般的视觉感受。在QT中,可以通过QOpenGLWidget或者QQuickWindow结合OpenGL技术...