qt 动画(界面跳转进场动画)

2023-10-27

  1.  目标:     做上位机软软件的时候,觉得QTabWidget的每个tab跳转时候,单纯的界面显示太过单调,希望有界面上面的控件有一个进场的动画效果。
  2. 效果:    
  3. 实现  : 通过动画QPropertyAnimation把设置单个控件动画效果,在用组合动画类QSequentialAnimationGroup顺序执行。            
  4. void MainWindow::addAnimationWidget(QSequentialAnimationGroup *Animation,QPushButton *widget)
    {
        int Durtime = 200;
        int startX = 600;
        if(!widget->isHidden())
        {
            QPropertyAnimation *pScaleAnimation = new QPropertyAnimation(widget, "pos");
            pScaleAnimation->setDuration(Durtime);
            pScaleAnimation->setStartValue(QPoint(200, widget->y()));
            pScaleAnimation->setEndValue(QPoint(widget->x(),widget->y()));
            pScaleAnimation->setEasingCurve(QEasingCurve::Linear);
            Animation->addAnimation(pScaleAnimation);
            widget->move(startX,widget->y());
        }
    }
    void MainWindow::on_currentChanged(int indexs)
    {
        if(Animation->state()==QSequentialAnimationGroup::Running){
            Animation->pause();
            Animation->resume();
            return;
        }
        Animation->clear();
        if(indexs ==0)
        {
            this->addAnimationWidget(Animation,ui->btn_1);
            this->addAnimationWidget(Animation,ui->btn_2);
            this->addAnimationWidget(Animation,ui->btn_3);
            this->addAnimationWidget(Animation,ui->btn_4);
        }
        else
        {
            this->addAnimationWidget(Animation,ui->btn_5);
            this->addAnimationWidget(Animation,ui->btn_6);
            this->addAnimationWidget(Animation,ui->btn_7);
            this->addAnimationWidget(Animation,ui->btn_8);
        }
        Animation->start();
    }
  5. 异常: 实际的项目中,经常会把tab widget每个tab的界面单独拿出来,这个时候需要需要调用showEvent,延迟十毫秒调用添加动画的槽函数,否则当外部有数据改变界面控件的数值,点击tab跳转过来,有时候会出现动画效果没有出来的情况。

下载:源码

本文内容由网友自发贡献,版权归原作者所有,本站不承担相应法律责任。如您发现有涉嫌抄袭侵权的内容,请联系:hwhale#tublm.com(使用前将#替换为@)

qt 动画(界面跳转进场动画) 的相关文章

  • QT 中的应用程序->处理消息?

    在 Borland 6 中 我经常使用它来解除程序操作的卡住 Application gt Processmessages 现在 对于 QT 4 8 1 我在这个外国 对我来说 QT 文档中找不到 谁能帮我 在 Qt 中 您可以使用静态函数
  • Qt GUI 编程设计

    我正在尝试创建一个 GUI 应用程序 主窗口 一个QMainWindow 包含 9 个固定大小的标签以及主窗口的大小 我尝试在没有 Qt GUI Designer 的情况下以编程方式制作它 该项目构建时没有错误 但我看不到主窗口上显示的任何
  • qt项目如何设置安装路径

    我正在寻找与 qmake configure prefix 等效的内容 基本上 我想覆盖默认的安装 部署目录 这是如何用命令行 qmake 指定的 我还使用 QtCreator 构建了很多 gui 项目 并且我想知道如何在 QtCreato
  • QGraphicsView 和 eventFilter

    这个问题已经困扰我两天多了 所以我想我应该问一下 我在Win7上使用Qt 4 5 3 用VC2008编译 我有 MyGraphicsView 继承 QGraphicsView 和 MyFilter 继承 QObject 类 当我将 MyFi
  • 当 QML 对象不可见时防止 QML 属性绑定?

    我正在开发一个具有大量属性绑定的 QML 应用程序 数百个对象被跟踪并以不同的形式显示 例如 Qt3D QCanvas 当我在应用程序的单独页面上时 x y 位置和相对大小的属性绑定仍在发生 我怎样才能阻止他们 我知道我可以根据属性是否可视
  • Qt/c++ 随机字符串生成[重复]

    这个问题在这里已经有答案了 我正在创建一个应用程序 需要生成多个随机字符串 几乎就像一个由一定长度的 ASCII 字符组成的唯一 ID 这些字符混合有大写 小写 数字字符 有没有 Qt 库可以实现这一点 如果没有 在纯 C 中生成多个随机字
  • Qt中如何获取鼠标在屏幕上的位置?

    我想获取屏幕上的鼠标坐标 我怎样才能在 Qt 中做到这一点 在 Windows 上 使用 C 我正在做类似答案中建议的事情对于这个问题 https stackoverflow com q 11737665 1420197 正如文档所述 QC
  • Qt:将拖放委托给子级的最佳方式

    我在 QWidget 上使用拖放 我重新实现了 DragEnterEvent dragLeaveEvent dragMoveEvent 和 dropEvent 效果很好 在我的 QWidget 中 我有其他 QWidget 子级 我希望它们
  • QtCreator 调试暂停停在代码而不是汇编处

    如何配置 QtCreator 以便在调试并按下暂停时它会显示当前正在处理的代码 现在显示汇编 无法在任何地方找到有关此问题的答案 我使用的是 Windows 7 我在 Ubuntu 16 04 中使用 Qt Creator 4 2 2 时遇
  • GoQt 致命错误:QAbstractAnimation:没有这样的文件或目录

    我尝试编译 Qt 来开发桌面应用程序 我按照 Qt 网站上的官方 wiki 指南的说明进行操作 当我尝试go run示例文件夹中的示例 我收到错误 去运行 home pinkya rabbit workspace go1programs s
  • QTextEdit.find() 在 Python 中不起作用

    演示问题的简单代码 usr bin env python import sys from PyQt4 QtCore import QObject SIGNAL from PyQt4 QtGui import QApplication QTe
  • 如何在模型更改时停止ListView“跳跃”

    我需要做什么 我需要创建一个聊天窗口用一个ListView在 QML 中存储聊天消息 我设置listView positionViewAtEnd 以便跟踪最后的消息 我禁用positionViewAtEnd当我向上滚动时 我可以阅读过去的消
  • 重定向 python 交互式帮助()

    我正在为使用 Qt 的应用程序开发交互式 python shell 但是我似乎无法获得重定向的交互式帮助 我的 python 代码中有这个 class OutputCatcher def init self self data def wr
  • 如何在 Qt 中以编程方式制作一条水平线

    我想弄清楚如何在 Qt 中制作一条水平线 这很容易在设计器中创建 但我想以编程方式创建一个 我已经做了一些谷歌搜索并查看了 ui 文件中的 xml 但无法弄清楚任何内容 ui 文件中的 xml 如下所示
  • 如何将图像显示为缩略图

    我有一个QTreeView显示硬盘驱动器和目录 我也有一个QListView显示图像文件如下 但我想将图像显示为缩略图 如下所示 My code mainWidget mainWidget QWidget parent QWidget pa
  • 使用 QtWebEngine 将 C++ 对象暴露给 Qt 中的 Javascript

    使用 QtWebkit 可以通过以下方式将 C 对象公开给 JavascriptQWebFrame addToJavaScriptWindowObject如中所述https stackoverflow com a 20685002 5959
  • Qt 插槽是否与其他代码并行运行?

    在此函数示例中 void MyClass myFunction emit MySignal1 emit MySignal2 如果我有slot1倾听MySignal1 and slot2倾听MySignal2 1 Is slot1总是会在之前
  • Qt:如何连接到 SQLite?

    我安装了 SQLite3 解压到 c sqlite 创建了一个数据库 c sqlite mzsales 现在我试图在 QTableView 中显示其内容 QSqlDatabase db QSqlDatabase addDatabase QS
  • Qt - 设置不可编辑的QComboBox的显示文本

    我想将 QComboBox 的文本设置为某些自定义文本 不在 QComboBox 的列表中 而不将此文本添加为 QComboBox 的项目 此行为可以在可编辑的 QComboBox 上实现QComboBox setEditText cons
  • 同时从多个流中捕获、最佳方法以及如何减少 CPU 使用率

    我目前正在编写一个应用程序 该应用程序将捕获大量 RTSP 流 在我的例子中为 12 个 并将其显示在 QT 小部件上 当我超过大约 6 7 个流时 问题就会出现 CPU 使用率激增并且出现明显的卡顿 我认为它不是 QT 绘制函数的原因是因

随机推荐

  • 用VS2015编译QGIS3.16.9源码

    TOC VS2015编译QGIS3 16 9源码 编译QGIS源码 由于编译QGIS时涉及依赖的开源库很多 过程比较麻烦 特在此记录编译的完整过程 以方便同道中人参考 同时也方便本人以后编译忘记步骤时回头看看 接下来就开干 一 VS2015
  • c语言输出txt文件不对齐,用fprintf函数打印同样的内容,样子不同。百度无解,望大佬帮忙...

    该楼层疑似违规已被系统折叠 隐藏此楼查看此楼 这是我的全部代码 功能是实现随机生成20个20以内的不重复的加减法 如果大佬们对我的代码思路和代码风格有什么建议 也希望能不吝赐教 include include include define
  • CSDN高校俱乐部2012年秋季巡讲安排及讲师介绍

    CSDN高校俱乐部2012年秋季巡讲行程在各位讲师 主席和指导教师的给力支持下已初步出炉 部分学校仍需要确认时间安排 大多数学校已确定巡讲时间 时间表列在下方 讲师介绍在最后 阵容强大值得期待 学校名单及安排 场序 地区 城市 分组 学校
  • SpringMVC视图解析器

    SpringMVC视图解析器 SpringMVC中的视图解析器的主要作用就是将逻辑视图转换成用户可以看到的物理视图 当用户对SpringMVC应用程序发起请求时 这些请求都会被SpringMVC的DispatcherServlet处理 通过
  • Xcode 调试之 Hello World

    编译 编译JKD 可以查看 Mac 编译 OpenJDK 8 调试 截图来自 https segmentfault com a 1190000005082098 调试 Hello World 编写好源文件 public class Hell
  • Linux命令行另类使用技巧

    0x00 基础简述 0x01 补全实践 bash completion zsh autosuggestions 文件名补全 特殊补全 命令行参数补齐 可编程补全 0x02 历史命令 设置历史记录 查看历史命令 搜索历史命令 前后移动历史命令
  • CSS层叠性(重要)

    CSS层叠性 重要 指多种CSS样式的叠加 是浏览器处理冲突的一个能力 如果一个属性通过两个相同选择器设置到同一个元素上 那么这个时候一个属性就会将另一个属性层叠掉 原则 1 样式冲突 遵循的原则是就近原则 即CSS的书写位置 2 样式不冲
  • 【2022年MathorCup大数据竞赛】B题:北京移动用户体验影响因素研究(一)

    目录 一 题目背景 二 初赛问题 三 数据集的分享 一 题目背景 移动通信技术飞速发展 给人们带来了极大便利 人们也越来越离不开移动通信技术带来的各种便捷 随着网络不断的建设 网络覆盖越来越完善 各个移动运营商 越来越重视客户的网络使用体验
  • 判断文件的几种方法及其优劣对比

    目录 一 懒人的try语句 二 传统的os模块 三 时尚的pathlib模块 四 几种方法优劣对比 我们知道当 件不存在的时候 open 法的写模式与追加模式都会新建 件 但是对 件进 判 我们之前学过 要 with语句来处理 件读写 但w
  • shell脚本生成两个数据日期之间的所有日期

    在linux下有时候会需要得到两个日期之间的所有日期 作为变量进行处理 例如两个日期之间的所有日期都分别生成一个用日期命名的文件夹 以下shell脚本循环输出两个指定日期之间的所有日期 包括两个输入日期 bin bash 以YYYYMMDD
  • 排列数【第十届】【决赛】【B组】

    在一个排列中 一个折点是指排列中的一个元素 它同时小于两边的元素 或者同时大于两边的元素 对于一个 1 n 的排列 如果可以将这个排列中包含 t个折点 则它称为一个 t 1 单调序列 例如 排列 1 4 2 3 是一个 3 单调序列 其中
  • GTK+的优点与QT的优点

    想看看图形界面系统的优缺点 转载了网友整理的 GTK 的优点与QT的优点整理 在嵌入式 Linux 下有很多图形界面系统 GUI 包括 Qt Embedded FLTK Microwindows 和 GTK 等 作为一个开发者 到底使用什么
  • YOLOv8+ByteTrack多目标跟踪(行人车辆计数与越界识别)

    课程链接 https edu csdn net course detail 38901 ByteTrack是发表于2022年的ECCV国际会议的先进的多目标跟踪算法 YOLOv8代码中已集成了ByteTrack 本课程使用YOLOv8和By
  • arcgis已试图对空几何执行该操作_ArcGIS中坐标转换和投影变换

    当不同来源 不同坐标系统的空间数据要在一起使用 相互参照时 就要进行坐标转换 如果涉及不同的地图投影 就要进行投影变换 动态投影 所谓动态投影 是指改变ArcMap中的数据框架 DataFrame 的空间参考或者对后加入ArcMap中的数据
  • liunx常用命令

    在liunx中可能有几百个命令 最常用的就10多个 liunx中最常用的命令 ls 功能 使用说明 案例 pwd 功能 使用说明 案例 cd 功能 使用说明 案例 mkdir 功能 使用说明 案例 touch 功能 使用说明 案例 rm 功
  • 动力节点 SpringBoot教程 p15 Whitelabel Error Page

    一步一步跟着王妈妈敲的 还是报错 后来发现是目录的问题 initiizer初始化出来application和comtroller不在一个包下面 把他挪到controller包下面就ok了 或者把他挪到和controller目录一个层次也可以
  • Android--沉浸式导航栏适配

    转自 Android 沉浸式导航栏适配 Aruba233的博客 CSDN博客 本文是用于设配SDK4 4到5 0的沉浸式导航栏适配 4 4下面的实现不了沉浸式 上次说到适配沉浸式状态栏时 为DecorView添加一个View可以是实现 导航
  • 包装类的使用

    包装类的使用 1 相关概念 java提供了8种基本数据类型对应的包装类 使得基本数据类型的变量具有类的特征 需要掌握 基本数据类型 包装类 String三者之间的相互转换 2 基本数据类型和包装类的互转 基本数据类型转换包装类 调用包装类的
  • EMI 滤 波 器 原 理 与 设 计 方 法 详 解

    输入端差模电感的选择 差模 choke 置于 L 线或 N 线上 同时与 XCAP 共同作用 F 1 2 L C 波器振荡频率要低于电源供给器的工作频率 一般要低于 10kHz L N2AL nH N2 nH N L nH AL nH N2
  • qt 动画(界面跳转进场动画)

    目标 做上位机软软件的时候 觉得QTabWidget的每个tab跳转时候 单纯的界面显示太过单调 希望有界面上面的控件有一个进场的动画效果 效果 实现 通过动画QPropertyAnimation把设置单个控件动画效果 在用组合动画类QSe