源代码: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实现异步渐变弹窗提示的更多相关文章

  1. WPF开发随笔收录-仿安卓Toast

    一.前言 在项目中,经常需要用到消息提醒功能,在以前接触安卓开发那会使用过Toast,于是打算在WPF上也来模仿一个,话不多说,撸起袖子干起来! 二.正文 1.首先新建一个工程,工程的目录如下 2.编 ...

  2. Android破解学习之路(五)——Android游戏 割绳子:魔法 + 在游戏加入Toast弹窗提示

    前言:这一期的破解教程,有新的知识内容出现啦! 这一期破解的游戏是找不到之前的关键字,怎么破解呢? 破解成功之后,添加一个Toast弹窗提示由XX破解,这操作该如何实现呢?请往下看~ 链接: http ...

  3. Qt 打开安卓相冊选择图片并获取图片的本地路径

    Qt 打开安卓相冊选择图片并获取图片的本地路径 过程例如以下: 通过 Intent 打开安卓的系统相冊. 推荐使用 QAndroidJniObject::getStaticObjectField 获取 ...

  4. JS仿Android Toast提示效果

    注:这个需要jquery文件来提示支持,所以需要先调用Jquery. <script type="text/javascript" src="js/jquery.j ...

  5. winform退出或关闭窗体时弹窗提示代码:转

    winform退出或关闭窗体时弹窗提示代码,当我们点击窗体的 X 按钮时,会弹出一个对话框,询问我们是直接退出,还是最小化到托盘,还是取消这个行为.或是是否保存当前修改等等.以下以最小化到托盘为例. ...

  6. artDialog 弹窗提示

    artDialog 弹窗提示,方便调用,不用去查文档了. /// <reference path="../../Scripts/artDialog5.0/artDialog.min.j ...

  7. php返回数组后处理(开户成功后弹窗提示)

    1. 在注册的时候,注册成功后经常会弹窗提示自己注册的信息,这类做法需要返回mysql数据库中获取的数组值,返回给前台页面,赋值给弹窗. 2.做法: 返回数组 打印的数组的值 返回数组处理 赋值给弹窗 ...

  8. 一款基于react-native的弹窗提示组件

    介绍一款基于react-native的弹窗提示插件 react-native-ms , github地址:https://github.com/jiangzhenfei/react-native-ms ...

  9. 关于webstorm打开项目,文件下方出现了一个小锁的图标,修改文件出现“cannot modify a ready-only directory”的弹窗提示

    今天用webstorm打开项目,文件下方出现了一个小锁的图标,修改文件出现“cannot modify a ready-only directory”的弹窗提示 解决办法:运行 sudo chown ...

  10. js 鼠标滚动到某屏时,加载那一屏的数据,仿京东首页楼层异步加载模式

    js用处:在做商城时,首页图片太多,严重影响首页打开速度,所以我们需要用到异步加载楼层.js名称:鼠标滚动到某屏时,加载那一屏的数据,仿京东首页楼层模式js解释:1.用于商城的楼层内容异步加载,滚动条 ...

随机推荐

  1. 1-1, 一个简单的mysql 安装教程,基于mysql 5.7解压版本.

    下载mysql. 略,去官网 1. 配置my.cnf. 把mysql提供的配置模板 copy到/etc/my.cnf (先读取/etc/my.cnf,再去读/etc/mysql/my.cnf,第三个读 ...

  2. 第8讲、Multi-Head Attention 的核心机制与实现细节

    为什么要有 Multi-Head Attention? 单个 Attention 机制虽然可以捕捉句子中不同词之间的关系,但它只能关注一种角度或模式. Multi-Head 的作用是: 多个头 = 多 ...

  3. LocalDateTime与时间戳、日期字符串的转换

    摘要:介绍LocalDateTime与时间戳.日期字符串的转换. 目录 需求背景 LocalDateTime转字符串 LocalDateTime转时间戳 时间戳转LocalDateTime 时间戳转日 ...

  4. 1.Windows Server 2012 R2安装.NET Framework4.7.1

    1.KB2919442 https://www.microsoft.com/zh-cn/download/confirmation.aspx?id=42153 2.clearcompressionfl ...

  5. 启智树提高组day4T3 T3(t3.cpp,1s,512MB)

    启智树提高组day4T3 T3(t3.cpp,1s,512MB) 题面描述 输入格式 输出格式 样例输入 样例输出 数据范围 题解 task1 暴力dfs 10分 Code 1 #include< ...

  6. 3. LangChain4j-RAG,实现简单的text-sql功能

    1. 简介 前两章我们讲了如何使用LangChain4J进行AI交互, 其中包括 使用ChatLanguageModel.ChatMessage.ChatMemory等底层组件进行灵活/自由的与AI交 ...

  7. DTALK直播预约 | 12月8日开播:后疫情时代,制造企业如何实现数字化转型?

    我国制造业拥有31个大类.179个中类和609个小类,是全球产业门类最齐全.产业体系最完整的制造业.二十大报告中强调:"坚持把发展经济的着力点放在实体经济上""推动制造业 ...

  8. APEX实战第4篇:如何把APEX程序变成“移动端APP”?

    因为使用手机登录APEX程序时,每次都要先到手机浏览器的入口感觉不方便且不专业,所以能不能像APP那样直接点击进入呢? 最简单的方式,就是使用PWA来实现类似APP程序一样的移动端登录. PWA本身配 ...

  9. ET框架服务端部署到Linux--升级3.1

    框架升级3.1参考:https://www.cnblogs.com/cj8988/p/14098017.html 安装.netcore 3.1 我的安装方法,直接下载文件(Centos7系统,之前安装 ...

  10. 打砖块小游戏html小游戏

    这里提供一个打砖块小游戏html代码,有需要的小伙伴可以自己试试. body内容 点击查看代码 <select id="difficulty"> <option ...