Qt | 仿安卓Toast实现异步渐变弹窗提示
源代码:https://gitee.com/zbylalalala1/qt_toast
示例截图
单点:

多次点击堆叠效果

概述
之前项目需求需要使用android进行开发,因为之前学习过java,简单学习了一下android就直接上项目了,在开发过程中发现android的Toast控件非常好用,于是就想使用qt实现一个类似的控件。并且能支持多种消息类型和显示时长,具有渐入渐出动画效果。
功能特性
计划设计集中固定的显示模式
支持三种消息类型:
- 普通消息 (NORMAL)
- 警告消息 (WARNING)
- 危险消息 (DANGER)
支持两种显示时长:
- 短时长 (SHORT_DUR - 1000ms)
- 长时长 (LONG_DUR - 2000ms)
自动堆叠显示多个消息
平滑的淡出动画效果
圆角矩形背景
半透明效果
使用方法
基本调用
#include "Toast.h"
// 显示普通消息,短时长
Toast::showToast(parentWidget, "操作成功");
// 显示警告消息,长时长
Toast::showToast(parentWidget, "警告:磁盘空间不足", Toast::WARNING, Toast::LONG_DUR);
// 显示危险消息
Toast::showToast(parentWidget, "错误:文件保存失败", Toast::DANGER);
### 集成到项目
1. 将以下文件添加到您的项目中:
- `Toast.h`
- `Toast.cpp`
2. 在您的项目文件(.pro)中包含 Toast.pri:
include($$PWD/Toast/Toast.pri)
定义的枚举
枚举类型
enum Duration {
LONG_DUR = 2000, // 长时长(2000ms)
SHORT_DUR = 1000 // 短时长(1000ms)
};
enum ToastType {
NORMAL, // 普通消息
WARNING, // 警告消息
DANGER // 危险消息
};
主要方法
showToaststatic void showToast(QWidget *parent, const QString &message, const ToastType &type = NORMAL, Duration duration = SHORT_DUR);
显示 Toast 消息
Qt | 仿安卓Toast实现异步渐变弹窗提示的更多相关文章
- WPF开发随笔收录-仿安卓Toast
一.前言 在项目中,经常需要用到消息提醒功能,在以前接触安卓开发那会使用过Toast,于是打算在WPF上也来模仿一个,话不多说,撸起袖子干起来! 二.正文 1.首先新建一个工程,工程的目录如下 2.编 ...
- Android破解学习之路(五)——Android游戏 割绳子:魔法 + 在游戏加入Toast弹窗提示
前言:这一期的破解教程,有新的知识内容出现啦! 这一期破解的游戏是找不到之前的关键字,怎么破解呢? 破解成功之后,添加一个Toast弹窗提示由XX破解,这操作该如何实现呢?请往下看~ 链接: http ...
- Qt 打开安卓相冊选择图片并获取图片的本地路径
Qt 打开安卓相冊选择图片并获取图片的本地路径 过程例如以下: 通过 Intent 打开安卓的系统相冊. 推荐使用 QAndroidJniObject::getStaticObjectField 获取 ...
- JS仿Android Toast提示效果
注:这个需要jquery文件来提示支持,所以需要先调用Jquery. <script type="text/javascript" src="js/jquery.j ...
- winform退出或关闭窗体时弹窗提示代码:转
winform退出或关闭窗体时弹窗提示代码,当我们点击窗体的 X 按钮时,会弹出一个对话框,询问我们是直接退出,还是最小化到托盘,还是取消这个行为.或是是否保存当前修改等等.以下以最小化到托盘为例. ...
- artDialog 弹窗提示
artDialog 弹窗提示,方便调用,不用去查文档了. /// <reference path="../../Scripts/artDialog5.0/artDialog.min.j ...
- php返回数组后处理(开户成功后弹窗提示)
1. 在注册的时候,注册成功后经常会弹窗提示自己注册的信息,这类做法需要返回mysql数据库中获取的数组值,返回给前台页面,赋值给弹窗. 2.做法: 返回数组 打印的数组的值 返回数组处理 赋值给弹窗 ...
- 一款基于react-native的弹窗提示组件
介绍一款基于react-native的弹窗提示插件 react-native-ms , github地址:https://github.com/jiangzhenfei/react-native-ms ...
- 关于webstorm打开项目,文件下方出现了一个小锁的图标,修改文件出现“cannot modify a ready-only directory”的弹窗提示
今天用webstorm打开项目,文件下方出现了一个小锁的图标,修改文件出现“cannot modify a ready-only directory”的弹窗提示 解决办法:运行 sudo chown ...
- js 鼠标滚动到某屏时,加载那一屏的数据,仿京东首页楼层异步加载模式
js用处:在做商城时,首页图片太多,严重影响首页打开速度,所以我们需要用到异步加载楼层.js名称:鼠标滚动到某屏时,加载那一屏的数据,仿京东首页楼层模式js解释:1.用于商城的楼层内容异步加载,滚动条 ...
随机推荐
- 1-1, 一个简单的mysql 安装教程,基于mysql 5.7解压版本.
下载mysql. 略,去官网 1. 配置my.cnf. 把mysql提供的配置模板 copy到/etc/my.cnf (先读取/etc/my.cnf,再去读/etc/mysql/my.cnf,第三个读 ...
- 第8讲、Multi-Head Attention 的核心机制与实现细节
为什么要有 Multi-Head Attention? 单个 Attention 机制虽然可以捕捉句子中不同词之间的关系,但它只能关注一种角度或模式. Multi-Head 的作用是: 多个头 = 多 ...
- LocalDateTime与时间戳、日期字符串的转换
摘要:介绍LocalDateTime与时间戳.日期字符串的转换. 目录 需求背景 LocalDateTime转字符串 LocalDateTime转时间戳 时间戳转LocalDateTime 时间戳转日 ...
- 1.Windows Server 2012 R2安装.NET Framework4.7.1
1.KB2919442 https://www.microsoft.com/zh-cn/download/confirmation.aspx?id=42153 2.clearcompressionfl ...
- 启智树提高组day4T3 T3(t3.cpp,1s,512MB)
启智树提高组day4T3 T3(t3.cpp,1s,512MB) 题面描述 输入格式 输出格式 样例输入 样例输出 数据范围 题解 task1 暴力dfs 10分 Code 1 #include< ...
- 3. LangChain4j-RAG,实现简单的text-sql功能
1. 简介 前两章我们讲了如何使用LangChain4J进行AI交互, 其中包括 使用ChatLanguageModel.ChatMessage.ChatMemory等底层组件进行灵活/自由的与AI交 ...
- DTALK直播预约 | 12月8日开播:后疫情时代,制造企业如何实现数字化转型?
我国制造业拥有31个大类.179个中类和609个小类,是全球产业门类最齐全.产业体系最完整的制造业.二十大报告中强调:"坚持把发展经济的着力点放在实体经济上""推动制造业 ...
- APEX实战第4篇:如何把APEX程序变成“移动端APP”?
因为使用手机登录APEX程序时,每次都要先到手机浏览器的入口感觉不方便且不专业,所以能不能像APP那样直接点击进入呢? 最简单的方式,就是使用PWA来实现类似APP程序一样的移动端登录. PWA本身配 ...
- ET框架服务端部署到Linux--升级3.1
框架升级3.1参考:https://www.cnblogs.com/cj8988/p/14098017.html 安装.netcore 3.1 我的安装方法,直接下载文件(Centos7系统,之前安装 ...
- 打砖块小游戏html小游戏
这里提供一个打砖块小游戏html代码,有需要的小伙伴可以自己试试. body内容 点击查看代码 <select id="difficulty"> <option ...