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 // 危险消息
};
主要方法
showToast
static 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.用于商城的楼层内容异步加载,滚动条 ...
随机推荐
- 第5讲、Transformer 编码器(Encoder)处理过程详解
Transformer 编码器(Encoder)处理过程详解 Transformer Encoder 是一个由 N 层(一般为 6 层)堆叠而成的模块结构.每一层的本质是两个核心子模块: 多头自注意力 ...
- Java中XML相关
XML的两种解析方式: 1.DOM解析:将标记语言一次性读入内存并在内存中生成一颗DOM树(适用于服务端) 优点:操作方便,可以对文档进行CURD操作 缺点:由于它是一次性全部读入内存的所以占用内存空 ...
- vivo Pulsar万亿级消息处理实践(1)-数据发送原理解析和性能调优
作者:vivo 互联网大数据团队- Quan Limin 本文是vivo互联网大数据团队<vivo Pulsar万亿级消息处理实践>系列文章第1篇. 文章以Pulsar client模块中 ...
- HTML常见的标签---表单
1 <table> 2 <tr> 3 <!-- name 一定要带上以后交互 --> 4 <td>用户名:</td> 5 <td> ...
- 《经验分享——在CSDN编写文章时如何实现空格、空行》
经验分享--在CSDN编写文章时如何实现空格.空行 一.富文本编辑器: 1.空格: 按空格键 2.空行 先按Tab,再按回车键 二.Markdown编辑器: 1. 空格: 按空格键 2.空行: 输入& ...
- Spring Boot 启动优化实践
作者:vivo 互联网服务器团队- Liu Di 本文系统性分析并优化了一个Spring Boot项目启动耗时高达 280 秒的问题.通过识别瓶颈.优化分库分表加载逻辑.异步初始化耗时任务等手段,最终 ...
- 18.Java源码分析系列笔记-JDK1.8的ConcurrentHashMap
目录 1. 是什么 2. 如何使用 3. 原理分析 3.1. 构造方法 3.1.1. Node 3.2. put方法[有加锁] 3.2.1. 计算key的hash 3.2.2. 死循环 3.2.3. ...
- AI编程实战:云开发疯狂助攻,React + Vite 做出 FPS 网页游戏不是梦
回想起最初接触云开发的那段时间,我出于练手的目的,开发了一款基于 HTML 的简易枪战游戏.当我满怀期待地将其展示给玩家时,没想到却被一句点评当场"点醒"了:这不就是打地鼠的升级版 ...
- 打造蓝牙音箱 OPENWRT && BLUETOOH && RTL8723.bs
初步 文件准备 1.rtl8723.bs官方guide , 由于这个文件是别的公司的不知道保密性是怎么样的. 实在想要私信我 算了有空再上传吧. 2. RTL8761A_FineTune_Baudra ...
- openwrtPackage *** is missing dependencies for the following libraries: 解决方案
参考文献 开源中国博客 你得在 staging_dir/target-arm_cortex-a7+neon_glibc-2.22_eabi/ 目录中确实找到你的哪一个库 如果找到了还报错了, 尝试 在 ...