当前位置: 首页 > wzjs >正文

永久网站建设免费微网站系统

永久网站建设,免费微网站系统,网站建设免费视频教学,wordpress 改语言Qt窗口动画实战:Qt实现呼吸灯效果 在嵌入式设备或桌面应用中,呼吸灯效果是一种常见且优雅的UI动画,常用于指示系统状态或吸引用户注意。本文将介绍如何使用Qt动画框架实现平滑的呼吸灯效果。 一、实现原理 利用Qt自带的动画框架来实现&…

Qt窗口动画实战:Qt实现呼吸灯效果

在嵌入式设备或桌面应用中,呼吸灯效果是一种常见且优雅的UI动画,常用于指示系统状态或吸引用户注意。本文将介绍如何使用Qt动画框架实现平滑的呼吸灯效果。

一、实现原理

利用Qt自带的动画框架来实现,具体实现看代码:
在这里插入图片描述

2、代码实现

#ifndef BUTTON_H
#define BUTTON_H#include <QPropertyAnimation>
#include <QSequentialAnimationGroup>
#include <QPainter>
#include <QColor>
#include <QWidget>class BreathingLight : public QWidget {Q_OBJECTQ_PROPERTY(int alpha READ alpha WRITE setAlpha)public:BreathingLight(QWidget *parent = nullptr) : QWidget(parent), m_alpha(0) {setFixedSize(200, 200);// 创建两个动画,一个从0到255,一个从255到0QPropertyAnimation *animationUp = new QPropertyAnimation(this, "alpha");animationUp->setDuration(2500);  // 动画时长为2000毫秒animationUp->setStartValue(20);   // 起始透明度animationUp->setEndValue(255);   // 结束透明度animationUp->setEasingCurve(QEasingCurve::InOutQuad);  // 使用平滑的缓入缓出动画曲线QPropertyAnimation *animationDown = new QPropertyAnimation(this, "alpha");animationDown->setDuration(2500);   // 动画时长为2000毫秒animationDown->setStartValue(255);  // 起始透明度animationDown->setEndValue(20);      // 结束透明度animationDown->setEasingCurve(QEasingCurve::InOutQuad);  // 使用平滑的缓入缓出动画曲线// 创建一个动画组,将两个动画添加进去,并设置为循环播放QSequentialAnimationGroup *animationGroup =new QSequentialAnimationGroup(this);animationGroup->addAnimation(animationUp);animationGroup->addAnimation(animationDown);animationGroup->setLoopCount(-1);  // 无限循环animationGroup->start();           // 启动动画组}int alpha() const { return m_alpha; }void setAlpha(int alpha) {m_alpha = alpha;update();  // 更新窗口,触发重绘事件}protected:void paintEvent(QPaintEvent *event) override {Q_UNUSED(event);QPainter painter(this);QColor color(0, 255, 0, m_alpha);  // 绿色,使用 m_alpha 透明度painter.setBrush(color);painter.setPen(Qt::NoPen);QRect paint_rect = rect();paint_rect.adjust(90, 90, -90, -90);painter.drawEllipse(paint_rect);  // 绘制一个椭圆,填充整个窗口}private:int m_alpha;
};#include <QApplication>
#include <QTableView>
#include <QHeaderView>
#include <QStandardItemModel>
#include "button.h"int main(int argc, char *argv[])
{QApplication a(argc, argv);//button.show();BreathingLight light;light.show();return a.exec();
}#endif // BUTTON_H

3、总结:

利用Qt自带的动画系统可以很方便的就做出炫酷的效果,相比较其他传统的UI,Qt这个方案对用户来说其实还是很方便的。


文章转载自:

http://urjxw7m4.pfkpy.cn
http://FL5o6pd8.pfkpy.cn
http://ByppMtl7.pfkpy.cn
http://3C1MgNJE.pfkpy.cn
http://AcJDJs7W.pfkpy.cn
http://W96ggymx.pfkpy.cn
http://Bl8cmKSK.pfkpy.cn
http://g9zhzxSM.pfkpy.cn
http://iuinglZL.pfkpy.cn
http://vsFtk2NN.pfkpy.cn
http://2dApBMM5.pfkpy.cn
http://8TwiQ4jp.pfkpy.cn
http://1tIrDsEj.pfkpy.cn
http://uzRb7Wc7.pfkpy.cn
http://M2MmJTtQ.pfkpy.cn
http://cTAK199e.pfkpy.cn
http://OruK7P0a.pfkpy.cn
http://swOibvjN.pfkpy.cn
http://g91E1cYM.pfkpy.cn
http://8fAwIHld.pfkpy.cn
http://UTOUfIaQ.pfkpy.cn
http://gbBA93tY.pfkpy.cn
http://o7ed90Z0.pfkpy.cn
http://Gmuc04Hb.pfkpy.cn
http://sfOuP7oq.pfkpy.cn
http://mkNhX0ut.pfkpy.cn
http://pIYgeAHJ.pfkpy.cn
http://dSek2h32.pfkpy.cn
http://f8jXN0Km.pfkpy.cn
http://H3pkxEEH.pfkpy.cn
http://www.dtcms.com/wzjs/744305.html

相关文章:

  • 网站系统说明上海徽与章网站建设宗旨
  • 宁夏银川做网站的公司建立网站需要多少钱怎么样
  • 杭州网站设计公司有哪些明年做哪些网站能致富
  • 设计个网站需要怎么做win7怎么做网站域名绑定
  • 网站标题可以修改吗做网站需要会什么编程
  • 网站建设都有那些费用广告推广系统
  • 大气家具行业商城类公司网站织梦模板做网站公司哪家
  • 2003配置网站与2008的区别网站排名怎样做有效
  • 精美公司网站源码网站建设翻译插件
  • 西安网站开发中文html网站模板下载
  • 网站建设的颜色值网页网站培训班
  • 乐从容桂网站建设广州网站建设设计厂家
  • 网站建设经典文章怎么查网站的外链数量
  • 中联建设集团股份有限公司网站做网站收入
  • 建立个人网站的目的保定知名网站建设公司
  • 中国购物网站有哪些网站建设3要素
  • 滕州网站开发提供佛山顺德网站建设
  • 建站系统排行榜广州网站建设 企业
  • 吴江建设局网站农业服务网站建设方案
  • 网站建设工具 公司广州企业网站开发
  • 中山民众网站建设武威网站建设公司有
  • 昆明做网站找哪个公司好企业网站空间
  • 网站新闻前置备案标准网站建设推荐
  • 编辑网站用什么软件设计制作一个企业类型网站
  • dw做网站学习解析个人备案网站做盈利合法吗
  • 郑州做网站找赢博科技上海建筑建材业网招标
  • 网站qq联系怎么做wordpress 获取当前用户id
  • 公司的网站建设价格小程序开发费用一览表v5g华网天下
  • 外贸网站推广 雅虎问答有用吗淘宝客建设网站首页
  • 网站备案备注信息网站空间报价单