QT界面动画呼吸框实现

#include
#include

Q_OBJECT
//自定义属性 对应的参数作用为
// 类型 属性名 获取值的函数 设置属函数(其中READ、WRITE为其格式)
Q_PROPERTY(int opacity READ opacity WRITE setOpacity)
public:
int opacity() const; //获取值
void setOpacity(int opacity); //设置值
void start_animation();/启动动画函数
void lineEdit_state_set(QLineEdit* ld);//切换lineEdit框对象函数
void lineEdit_state_stop(); //停止动画效果
QLineEdit *pre_ld; //设置为全局,存储对象用于下次还原对象样式
private:
QPropertyAnimation *m_animation; //动画对象指针
int m_opacity;

//构造时需要
//创建动画对象空间(初始化可以指定动画控件和动画需使用的动画属性名)
m_animation = new QPropertyAnimation();
m_animation->setTargetObject(this); //设置使用动画的控件
//统一的效果可以在对象创建的位置设置(如动画属性名、动画时间、动画使用对象等)
// 不同的设置在使用位置单独设置即可
int parameter::opacity() const
{
return m_opacity;
}

void parameter::setOpacity(int opacity)
{
//使用传入的值通过QSS设置透明度
QString qss = “border: 5px solid rgba(13,4,137, %1)”;
pre_ld->setStyleSheet(qss.arg(opacity));
}

void parameter::start_animation(){
//opacity:不透明度
m_animation->setPropertyName(“opacity”); //指定动画属性名为自定义的属性
m_animation->setDuration(1000); //设置动画时间(单位:毫秒)
//设置动画步长值,以及在该位置时显示的透明度
m_animation->setKeyValueAt(0, 255);
m_animation->setKeyValueAt(0.5, 0);
m_animation->setKeyValueAt(1, 255);
m_animation->setLoopCount(-1); //当值为-1时,动画一直运行,直到窗口关闭
m_animation->start(); //启动动画
}

void parameter::lineEdit_state_set(QLineEdit* ld)
{
m_animation->stop(); //停止动画
if(ld){
if(pre_ld!=nullptr){
/还原之前的状态/
pre_ld->setStyleSheet (“”);
pre_ld->setStyleSheet (“border: 3px solid #939393;”);
}
pre_ld = ld;
}
Q_PROPERTY(int opacity READ opacity WRITE setOpacity)
start_animation();
}

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

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

相关文章

LabVIEW电容器充放电监测系统

概述 为了对车用超级电容器的特性进行研究,确保其在工作时稳定可靠并有效发挥性能优势,设计了一套车用超级电容器充放电监测系统。该系统通过利用传感器、USB数据采集卡、可调直流稳压电源、电子负载以及信号调理电路,完成对各信号的采集和超…

企业数字化转型怎么干?

目录 企业数字化转型是什么? 企业数字化转型为什么? 企业数字化转型怎么干? 企业数字化转型是什么? 先看一下案例,华为经历了多次战略转型,它是如何在危机中成长,涅槃重生? 199…

springboot中通过jwt令牌校验以及前端token请求头进行登录拦截实战

前言 大家从b站大学学习的项目侧重点好像都在基础功能的实现上,反而一个项目最根本的登录拦截请求接口都不会写,怎么拦截?为什么拦截?只知道用户登录时我后端会返回一个token,这个token是怎么生成的,我把它…

软设之桥接模式

桥接模式的意图是:将抽象部分与它的实现部分分离,使它们都可以独立变化。 比如说汽车是一个抽象的概念,但汽车有不同品牌和型号,这些汽车有不同的驱动方式,比如烧油或者电动。假如用传统的方式,每增加一个…

底软基础 | 嵌入式程序员编程必看的525钟C/C++ 安全编程问题

《360 安全规则集合》简称《安规集》,是一套详细的 C/C 安全编程指南,由 360 集团质量工程部编著,将编程时需要注意的问题总结成若干规则,可为制定编程规范提供依据,也可为代码审计或相关培训提供指导意见,…

VBA即用型代码手册:根据预定义的文本条件删除行

我给VBA下的定义:VBA是个人小型自动化处理的有效工具。可以大大提高自己的劳动效率,而且可以提高数据的准确性。我这里专注VBA,将我多年的经验汇集在VBA系列九套教程中。 作为我的学员要利用我的积木编程思想,积木编程最重要的是积木如何搭建…

Spring Boot 事件监听机制实战【自定义 Spring Boot 事件监听】

前言: 上一篇我们分析了 Spring Boot 事件监听的原理,本篇我们来自定义实现自己的监听器。 Spring Boot 系列文章传送门 Spring Boot 启动流程源码分析(2) Spring Boot 启动流程源码分析(2) Spring Bo…

LINUX命令行界面常用指令

目录 1. 命令行交互 2. 常用命令 2.1 打开命令行界面 2.2 打印当前目录的绝对路径 2.3 查询文件目录 2.4 了解命令结果 2.5 查看功能命令 2.6 清屏 2.7 切换路径 2.8 创建目录 1. 命令行交互 进入命令行交互界面:CTRLaltF2; 退出命令行交互…

怎么做好菲律宾TikTok直播带货?

TikTok目前是全球最受欢迎的APP之一,菲律宾TikTok直播已成为品牌出海的新趋势。作为一种新兴的引流渠道,出海电商卖家正通过直播带货模式实现流量变现。 在进行菲律宾TikTok直播时,关键在于能否吸引和留住消费者并促成购买。因此,…

【MOT】《Multiple Object Tracking in Recent Times: A Literature Review》

原文 Bashar M, Islam S, Hussain K K, et al. Multiple object tracking in recent times: A literature review[J]. arXiv preprint arXiv:2209.04796, 2022.https://arxiv.org/pdf/2209.04796 参考文章 多目标跟踪最新综述(基于Transformer/图模型/检测和关联…

品牌策划不只是文案,揭秘背后的策略与创意!

品牌策划,听起来高大上,但其实它远不止是写个策划案那么简单。 这事儿,得用心,得深入,得全面。它涉及到品牌的定位、形象、传播,还有市场分析、竞争对手研究、目标受众识别,每一个环节都是品牌…

昆法尔The Quinfall在Steam上怎么搜索 Steam上叫什么名字

昆法尔The Quinfall是一款全新的MMORPG,在中世纪的深处,参与独特的战斗和沉浸式的故事,有几十个不同的职业。而游戏中的战斗系统更是丰富多彩,无论是陆地激战、海上鏖战还是城堡围攻,都能让玩家感受到前所未有的刺激和…

zdppy + vue3 + antd 实现一个表格编辑行,批量删除功能

编辑单元格和多选的功能 首先是编辑单元格的功能,点击编辑按钮,可以直接在表格中队内容进行编辑,点击保存以后能够同步到数据库。 其次是多选的功能,点击每行前面的多选框按钮,我们可以选中多行。 完整后端代码&am…

[论文笔记] 自对齐指令反翻译:SELF-ALIGNMENT WITH INSTRUCTION BACKTRANSLATION

https://arxiv.org/pdf/2308.06259 这篇论文介绍了一种名为“指令反向翻译”(instruction backtranslation)的方法,用于通过自动标记人类书写的文本和相应的指令来构建高质量的指令跟随语言模型。这里是一个通俗易懂的解释: 一、背景 通常,训练一个高质量的指令跟随语言…

GraphQL在Postman中:释放API查询的强大潜能

🚀 GraphQL在Postman中:释放API查询的强大潜能 Postman作为API开发和测试的领先工具,对GraphQL的支持为开发者提供了一种新的方式来查询和管理数据。GraphQL是一种查询语言,用于API,允许客户端明确指定他们需要哪些数…

【Linux】命令执行的判断依据:;,,||

在某些情况下,很多命令我想要一次输入去执行,而不想要分次执行时,该如何是好? 基本上有两个选择, 一个是通过shell脚本脚本去执行,一种则是通过下面的介绍来一次入多个命令。 1.cmd:cmd&#…

Nuxt框架中内置组件详解及使用指南(五)

title: Nuxt框架中内置组件详解及使用指南(五) date: 2024/7/10 updated: 2024/7/10 author: cmdragon excerpt: 摘要:本文详细介绍了Nuxt框架中和组件的使用方法与配置,包括安装、基本用法、属性详解、示例代码以及高级功能如…

【LeYOLO】嵌入式和移动端的轻量级YOLO模型

代码地址:https://github.com/LilianHollard/LeYOLO 论文地址:https://arxiv.org/pdf/2406.14239 在深度神经网络中,计算效率对于目标检测至关重要,尤其是在新模型更注重速度而非有效计算(FLOP)的情况下。这…

ChatGPT-4o大语言模型优化、本地私有化部署、从0-1搭建、智能体构建技术

在过去几年中,人工智能领域的发展迅猛,尤其是大语言模型的应用,为各行各业带来了前所未有的创新与突破。从ChatGPT-3.5的推出到GPT Store的上线,再到最新的多模态交互ChatGPT-4o,OpenAI不断引领科技潮流,推…

Docker安装BRIA-RMBG-1.4模型,背景去除

目录 前言 模型描述 训练数据 定性评估 docker安装 运行 结论 Tip: 问题1: 问题2: 前言 BRIA 背景去除 v1.4 模型 RMBG v1.4 是我们最先进的背景去除模型,旨在有效地将各种类别和图像类型的前景与背景分开。该模型已在…