QT中实现图片淡出淡入的效果

Qt实现移入移出与淡入淡出效果 在用Qt做一些客户端时,经常需要实现循环播放一组图文,实现一些广告、步骤引导等效果; 而直接切换又比较生硬,需要加上一些常用的效果,比如淡入淡出效果、平移效果(移入移出)等等; 可以使用QMovie与QGraphicsOpacityEffect与定时器QTimer可以实现这样的效果,可以按你所需,自由实现这些效果; 这里给出一个例子,主要实现了淡入淡出效果与平移效果(上下左右自由组合): 阅读详情

点击打开链接

折腾了几天,终于实现了图片的淡出淡入的效果。 其实也应该是说实现了图片的淡入效果,因为淡出效果我暂时还用不到,但原理还是一样的。


       网上关于图片的淡出淡入效果的讨论蛮多的,但是用QT实现就很少了。实现这种效果有两种途径:一是读取图片的RGB值,然后渐进达到淡出淡入的效果,这种方法我没有尝试,感觉还是比较复杂。二是设置加载图片载体的透明度,从完全透明到完全显示,控制这个过程可以用过定时器(QTimer)来实现。

      我是用QLabel加载图片的,主要运用到QTimer和QGraphicOpacityEffect这两个控制类。下面我说一下实现这种效果的步骤:

<1>   把label的属性背景透明度设置为透明,注意这并不能使你的图片变为透明,因为这只是使得label的边框,背景色彩消失而已。
  1. ui->label->setAttribute(Qt::WA_TranslucentBackground, true);
复制代码
<2>   加载图片,这个就不多说了,我是加载了一张gif图片,是静态的gif图片- -。
  1. ui->label->setPixmap(QPixmap("path"));
复制代码
<3>   把加载了图片的label设置完全透明
  1. float opacity=0.0;

  2. QGraphicOpacityEffect *effect=new QGraphicOpacityEffect()'

  3. effect->setIOpacity(opacity);//透明范围为0.0-1.0,默认为0.7  ui->label->setGraphicEffect(effect);  
复制代码
<4> 利用QTimer实现渐变过程
  1. QTimer timer;

  2. QObject::connect(&timer,SIGNAL(timeout()),this,SLOT(fade_on_fade_out()));

  3. timer.start(250);//每隔250毫秒发射一次timeout()
复制代码
<5>在槽函数fade_on_fade_out()实现渐变功能
  1. void fade_on_fade_in()

  2. {        if(opacity>=1.0)

  3. }


  4.     {
  5.         timer.stop();//定时器停止
  6.     }
  7.     else
  8.     {
  9.         effect->setOpacity(opacity);
  10.         ui->label->setGraphicsEffect(effect);
  11.        }
  12.     opacity+=0.1;//透明度累加
  13. }
复制代码
<6>完成。
Qt中的窗口动画实现 在Qt中,我们可以通过QPropertyAnimation类以及QGraphicsOpacityEffect类来为窗口添加一些简单而优美的动画效果。下面就演示一下如何在Qt中实现窗口淡入淡出的动画效果。Qt中的窗口动画实现。 阅读详情

相关推荐

Qt实现仿苹果对话框淡入淡出的动画

通过以上的代码,我们可以实现一个仿苹果对话框的淡入淡出动画效果。当对话框显示时,它将会以淡入的方式出现,当对话框隐藏时,它将会以淡出的方式消失。首先,我们需要创建一个自定义的对话框类,用于显示对话框的内容。我们将动画的起始值设置为0,结束值设置为1,并设置动画的持续时间为1000毫秒。对象,设置了动画的起始值为1,结束值为0,持续时间为1000毫秒。接下来,我们可以在主窗口中创建一个按钮,用于显示对话框。在构造函数中,我们将对话框的初始透明度设置为0。对象,并设置了动画的目标对象为对话框本身,动画属性为。

CodeJolt的博客 285

Qt 窗体的淡入淡出效果

原理 : 页面1  ->   FaderWidget -> 页面2                    FaderWidget派生于QWidget 且大小和页面2相等,颜色初始值和页面2也相同                     FaderWidget显示的时候就会以页面2的背景色挡住页面2上的所有控件,                     FaderWidget类内部还有个定时

zengcccc的专栏 4980

qt实现窗口渐进效果

如题, 利用计时器实现窗口的渐进效果,淡入淡出

Qt之对话框消失动画

一、效果展示   最近做了一个提示框消失的功能,觉着挺有意思,以前一直以为Qt子窗口不能做淡出效果,其实Qt的淡出功能已经帮我们封装好了,我们仅仅只需要几行代码就可以做出酷炫的窗口关闭效果,写此篇文章的时候,我特意浏览了下之前写的两篇文章(QPainterPath 不规则提示框,QPainterPath 不规则提示框(二)),现在回想起来那会儿确实知之甚少,关于顶层窗口不能做圆角,其实帮助文档里...

weixin_34413357的博客 1019

QT实现界面的缓慢出现与退出Demo

这个可运行程序实现QT界面的缓慢出现,缓慢退出与退出前询问的效果,适用于美化界面。

不止是回退SDK:深入解读UE5.2编译时那个烦人的C4756警告与INFINITY宏的变迁

本文深入解析了UE5.2源码编译时出现的C4756警告及其背后的技术原因,探讨了Windows SDK中INFINITY宏的变迁对Unreal Engine的影响。文章详细介绍了微软修改INFINITY定义的技术考量,并提供了UE5.2应对此类问题的灵活解决方案,包括通过BuildConfiguration.xml文件精确控制工具链版本,确保构建系统的可重复性和可配置性。

weixin_27180827的博客 311

qt 在指定区域添加图片

博客出处:http://www.devdiv.com/thread-39111-1-1.html 折腾了几天,终于实现了图片的淡出淡入的效果。 其实也应该是说实现了图片的淡入效果,因为淡出效果我暂时还用不到,但原理还是一样的。 网上关于图片的淡出淡入效果的讨论蛮多的,但是用QT实现就很少了。实现这种效果有两种途径:一是读取图片的RGB值,然后渐进达到淡出淡入的效果,这种方法我没有...

weixin_30894389的博客 1358

HarmonyOS开发第一步:Dev Eco Studio4.0保姆级安装配置指南(含Node.js环境)

本文提供HarmonyOS开发环境搭建的保姆级教程,重点详解Dev Eco Studio 4.0的安装与配置,并攻克Node.js环境与Ohpm包管理器的关键设置难点。通过清晰的步骤指引,帮助开发者从零开始,高效完成开发环境部署,顺利迈出鸿蒙应用开发的第一步。

lake5的博客 569

QT 淡入淡出效果来回切换 ,淡入后在淡出

QT 淡入淡出效果来回切换QT淡出淡入来回切换首先是.h文件然后是.cpp文件可以去试试啦 QT淡出淡入来回切换 我也在网上找了很多发现很多都是单切换或者有的不对,我就自己改了一下,欢迎大牛来指教。大家一起学习。 我这个是来回切换不停止,淡入后在淡出。多了不说了 上代码。 首先是.h文件 写的很潦草 不要见怪 代码片. #ifndef TJIA_H #define TJIA_H #include...

weixin_47144152的博客 1282

两个独立的正态分布的和仍然为正态分布的证明

正态分布的和

weixin_40064300的博客 1万+

PyCharm 配置 Anaconda 环境时找不到 python.exe 的解决办法

通过本文的排查步骤与详细解决方案,你应该能够迅速定位并修复 PyCharm 配置 Anaconda 环境时找不到 python.exe 的问题。确保正确设置环境路径、激活目标环境以及手动指定解释器路径是解决此问题的关键。随着开发工具与包管理器的不断更新,类似的问题可能会出现新的变体。持续关注官方文档、社区讨论和版本更新,可以帮助开发者及时适应新变化,并优化工作流程。希望本文提供的分析和代码示例能为你的开发环境配置带来帮助,让你在 PyCharm 与 Anaconda 的高效协同下,专注于创新与代码实现。

s13596191285的博客 3117

idea 导出war包_idea将项目导出为war包

Web 播放声音(AMR 、WAVE)最近甚是苦闷,属于边学边做,跳进了很多坑,别提有多惨了,不过结果还是不错滴,纵观前后,一句话足以概括 “痛并快乐着” ~~~ ok,我少说废话,下面来总结下 Web 播放声音一些注意事项. 说到 We ...JavaScript笔记&colon;函数函数是定义一次但却可以调用或执行任意多次的代码块. 一.函数定义 javascript中的函数使用fun...

weixin_39806413的博客 165

基于SAGE算法的宽带信道参数估计算法的MATLAB仿真

本文将介绍如何使用MATLAB进行SAGE算法的仿真,以便更好地理解和应用该算法。SAGE算法是一种基于最大期望(Expectation-Maximization)方法的迭代估计算法,用于估计未知的参数。在宽带信道参数估计中,SAGE算法通过迭代优化来估计信道的传输函数。总结起来,本文介绍了如何使用MATLAB进行基于SAGE算法的宽带信道参数提取算法的仿真。通过以上步骤,我们可以得到估计的信道响应,并与真实信道响应进行比较。此外,SAGE算法还可以与其他信道估计算法相结合,以提高估计的准确性和性能。

CodeRoarX的博客 1075

QPropertyAnimation - Qt widget 淡入淡出效果(一)

在嵌入式设备里,当QT界面需要切换的时候,往往需要很多动态效果。例如根据触摸,动态左右切换屏幕,或则是点一个按键,做界面淡入淡出效果等。这里会整合网络上的一些资源,做几种特效。这一篇先给一个淡入淡出的示例。 参考资料:http://serge45-blog.logdown.com/posts/208655-qt-widget-fade-effect 大神的代码完整实现了淡入淡出,但是作为初学者...

EFM32的专栏 3293

代谢组数据分析(二十四):基于tidymass包从质谱原始数据到代谢物注释结果的实践指南

本教程介绍了如何使用 R 语言中的 tidymass 包进行代谢组学数据分析。tidymass 是一个专为液相色谱-质谱(LC-MS)数据设计的开源工具,提供从数据准备到统计分析的全流程支持。教程详细讲解了数据准备、数据处理、数据探索、数据清洗、代谢物注释、统计分析及结果输出的步骤。用户需准备 MS1、MS2 数据和样本信息表,并通过 tidymass 进行峰识别、峰分组、保留时间校正等操作。数据处理后,用户可进行数据探索、清洗和代谢物注释,最终通过统计分析发现潜在的生物标志物,并输出结果。教程还提供了代码

专注生信领域 1635

【unity实战】Unity游戏开发:如何用ScriptableObject与序列化多态实现可复用的模块化效果系统?

本文介绍了两种实现卡牌游戏效果系统的模块化设计方案。方案一使用ScriptableObject创建独立的效果资产,通过组合实现不同效果,优点是数据可复用、可视化编辑,缺点是同类不同参数效果需创建大量SO文件。方案二利用SerializeReference特性直接嵌套效果实例,避免SO文件过多,但需要插件支持编辑器多态显示。两种方案都将效果与卡牌解耦,提高了代码复用性和扩展性,解决了硬编码带来的重复、维护困难和扩展不便等问题。开发者可根据项目需求选择合适方案,或结合两者优势构建更灵活的系统。

向宇的博客,专注php/web全栈 unity游戏开发,欢迎大家评论纠错 436

用QT实现淡入淡出的效果

/* baseinfo.h  * 孤舟钓客  * 2011-07-21  */ #ifndef BASEINFO_H #define BASEINFO_H #include #include #include #include #include #include class BaseInfo : public QWidget {     Q_OB

koilin的专栏 7094

什么是 SAP ABAP Secure Storage

此过程将单独的密钥存储在密钥路径中的密钥文件中,并自动使用新加密密钥加密安全存储中的所有数据记录。需要注意的是,不要在没有命令行工具的情况下操作密钥文件,例如,不要用不同的版本替换密钥文件,否则,安全存储中的数据记录可能变得不可读。当需要访问这些数据时,系统会对其进行解密。文件系统中的安全存储(Secure Storage in the File System)也是 SAP NetWeaver Application Server for ABAP 的一部分,主要用于安全存储连接相关的数据,如密码等。

2007 年 ~ 2025 年,深耕 SAP 技术 18 年 439

QT 点击按钮横向缓缓展开控件,label渐变消失和显示

点击按钮横向缓缓展开控件 效果图 关键代码 form.cpp #include "form.h" #include "ui_form.h" const int Scaling_factor = 5; Form::Form(QWidget *parent) : QWidget(parent), ui(new Ui::Form) { ui->setupUi(this); setAttribute(Qt::WA_TranslucentBackground); set

和过去说再见的博客 1094

RU DOS版、EFI版32bit/64bit BIOS常用工具

DOS版、EFI版的RU工具,可用来查看IO、MEM、PCI、SMBIOS等资源。亲测在EFI SHELL下可用。

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

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

QT界面切换

应用场景 淡入淡出 界面平移 回弹效果应用场景在开发桌面应用的时候,经常性的会在几个界面之间切换 可以是局部的,也可以是整个界面 以前我总是利用hide和show来完成 但是很缺乏动态的美感,用户在使用的时候体验不好 今天就来解决这个问题下面进入正题: QPropertyAnimation 在QT中使用这个类可以很容易的设置一般的动画淡入淡出 QPropertyAnimation

hezf_hero的博客 1万+

win10 跳过U8环境检测的IE WebControls.rar

win10 安装u8的时候 提示IE WebControls 不通过,这个工具可以欺骗u8的检查。 跳过U8环境检测的IE WebControls。提示导入失败后,重新检测通过。

淡入淡出启动画面的制作

http://down.51cto.com/data/133335 CSplashWnd.h #pragma once #include "afxwin.h" // CSplashWnd class CSplashWnd : public CWnd { DECLARE_DYNAMIC(CSplashWnd) public: CSplashWnd(UINT nBitmapID);

leo1949asd的专栏 888

efm32 入门.pdf

本PDF共计22页,介绍的是操作驱动API,下载与否自己斟酌。

QT实现消息提示,数秒后自动消失

这篇文章主要介绍了软件利用Qt实现消息提示可定时自动关闭,文中的示例代码讲解详细,感兴趣的可以学习一下。需要注意的是,要使用Qt进行开发,需要先正确地配置Qt开发环境,并包含必要的头文件。

u012959478的博客 2097

Qt窗口动画-淡入淡出-移动-缩放

SubWidget.h #ifndef SUBWIDGET_H #define SUBWIDGET_H #include <QPainter> #include <QWidget> #include <QPaintEvent> #include <QStyleOption> class SubWidget : public QWidget { Q_OBJECT public: SubWidget(QWidget *parent = nullpt

youyicc 2602
上一篇: Qt学习笔记,QWidget和QMainWindow新认识
下一篇: QT中采用信号槽机制实现两个label切换图片的关联
Qicz
博客等级 码龄16年 56粉丝 122原创
评论 1
成就一亿技术人!
拼手气红包6.0元
还能输入1000个字符
 
 条评论被折叠 查看
添加红包

请填写红包祝福语或标题

个

红包个数最小为10个

元

红包金额最低5元

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

抵扣说明:

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

余额充值