目录

基本要求

源码


基本要求

这里其实还有一种方法,使用QTimeLine同样可以实现QpropertyAnimation的效果!这个没给出滑动的效果,但给出一个渐变的效果,连接如下所示:

https://mp.csdn.net/postedit/82901505

滑动效果原理很简单,在此不再说明!!!!

程序运行截图如下:

ui如下:

源码

如下:

widget.h

#ifndef WIDGET_H
#define WIDGET_H#include <QWidget>QT_BEGIN_NAMESPACE
class QPropertyAnimation;
QT_END_NAMESPACEnamespace Ui {
class Widget;
}class Widget : public QWidget
{Q_OBJECTpublic:explicit Widget(QWidget *parent = 0);~Widget();protected slots:void pushButtonClicked();private:Ui::Widget *ui;QPropertyAnimation *m_propertyAnimation;bool m_isShow;
};#endif // WIDGET_H

widget.cpp

#include "widget.h"
#include "ui_widget.h"
#include <QPropertyAnimation>Widget::Widget(QWidget *parent) :QWidget(parent),ui(new Ui::Widget)
{ui->setupUi(this);this->setWindowTitle("CSDN IT1995");m_isShow = false;ui->listWidget->setMaximumHeight(0);m_propertyAnimation = new QPropertyAnimation(ui->listWidget, "maximumHeight");connect(ui->pushButton, SIGNAL(clicked(bool)), this, SLOT(pushButtonClicked()));
}Widget::~Widget()
{delete ui;
}void Widget::pushButtonClicked()
{if(!m_isShow){m_propertyAnimation->setDuration(200);m_propertyAnimation->setStartValue(0);m_propertyAnimation->setEndValue(100);m_propertyAnimation->start();}else{m_propertyAnimation->setDuration(200);m_propertyAnimation->setStartValue(100);m_propertyAnimation->setEndValue(0);m_propertyAnimation->start();}m_isShow = !m_isShow;
}

main.cpp

#include "widget.h"
#include <QApplication>int main(int argc, char *argv[])
{QApplication a(argc, argv);Widget w;w.show();return a.exec();
}

Qt工作笔记-使用QpropertyAnimation实现控件上下滑动的效果相关推荐

  1. C#.Net工作笔记018---葡萄城控件FlexGrid自定义单元格_以及给自定义控件添加自定义事件

    技术交流QQ群[JAVA,C,.NET,BigData,AI]:170933152 工作需要,给flexgrid添加自定义类型的单元格,这里自定义了一个radiobutton. 下面这个案例可 以在f ...

  2. C#.Net工作笔记019---葡萄城控件FlexGrid自定义风格_比如给某列设置某个颜色_该颜色不受选择行的影响

    技术交流QQ群[JAVA,C,.NET,BigData,AI]:170933152 项目中有个需求,就是,前两列,需要固定住,但是我们都知道固定列是,作为表的title部分的,也就是不能写入文字的, ...

  3. C# 学习笔记(8) 控件的跨线程访问

    C# 学习笔记(8) 控件的跨线程访问 本文参考博客 C#多线程 https://www.cnblogs.com/dotnet261010/p/6159984.html C# 线程与进程 https: ...

  4. qt 关闭窗口的槽函数_勇哥的VC++应用框架学习之QT(1) 信号槽、按钮控件、opencv读取显示图片...

    前言勇哥对于C语言,C++早些年有一些接触,这个系列贴子就记载一下C++应用框架的学习经验. 在写程序时,UI.基础类库.应用程序框架对于vc来讲,只能依靠MFC和QT了. 勇哥对MFC有很强的抵触, ...

  5. Qt学习之显示类的控件(QLabel、QTextBrowser、QGraphicsView、QCalendarWidget、QWebView、QProgressBar、QOpenGLWidget)

    本文转自:<Qt编程指南>        作者:奇先生 Qt编程指南,Qt新手教程,Qt Programming Guide 5.5 显示类的控件 本节显示类控件是指作为显示用途的控件,本 ...

  6. Qt工作笔记-发送端发送Json格式的数据包,接收端解析数据包

    原理以及运行 原理是因为QJsonDocument提供了一个函数toJson 可以直接把Json数据转成QByteArray,这样就可以直接发送数据包,然后再按照常规方法解析即可,本源码中含解析内容, ...

  7. Qt安装事件过滤器、过滤子控件事件、截获控件按键、鼠标事件

    Qt安装事件过滤器.过滤子控件事件.截获控件按键.鼠标事件 Qt的事件模型一个强大的功能是一个QObject对象能够监视发送其他QObject对象的事件,在事件到达之前对其进行处理. 假设我们有一个C ...

  8. Python tkinter 学习笔记(2)-- 控件、组件(二)

    Python tkinter 学习笔记(1)-- 第一个窗口之HelloWorld 教程 Python tkinter 学习笔记(2)-- 控件.组件(一) > 续上一章节 Python tki ...

  9. 2020.4.23工作记录————Regsvr32加载控件失败:“请确保该二进制存储在指定路径中。。。”

    工作记录----Regsvr32加载控件失败: 之前的OCX控件今天我因为工作需要又重新写了个新的,跟之前不同的是这次的控件链接了第三方的动态库,但是在OCX控件生成完成后我使用管理员身份运行cmd对 ...

最新文章

  1. 聊聊 TCP 长连接和心跳那些事
  2. SAP MM 存储条件 - Room Temperature Vs Ambient
  3. 牛客题霸 SQL5 查找所有员工的last_name和first_name以及对应部门编号dept_no
  4. mysql的所有权限
  5. 调试Android之system.img的来回切换。
  6. java disjoint_java – Union Find算法的应用(Disjoint Set)
  7. OpenCV获取图像某点的颜色值,并设置某点的颜色
  8. C#中使用资源文件保存图片和皮肤文件的使用
  9. Bootstrap简介、下载bootstrap及引入文件说明、响应式容器和满屏容器、栅格系统
  10. Docker - 安装并持久化PostgreSQL数据
  11. Samba使用大全(绝对经典)
  12. uygurqa输入法android,uygurqa键盘输入法
  13. 物联网云平台的远程管理
  14. pyinstaller 出现Cannot find existing PyQt5 plugin directories
  15. 手游运营数据监控指标浅谈
  16. ps无法在此计算机上,为什么电脑安装不了ps?
  17. 苹果手机电池容量已经82%了,需要更换吗?
  18. ThinkPHP5.0 中使用荣联云通讯
  19. 【读书笔记】计算广告(第1部分)
  20. 【物联网学习笔记——人人学IoT系列】四、物联网关,汇聚回传

热门文章

  1. poj 3041 Asteroids
  2. 解析应用结构,优化网络效能
  3. 3G应用上新闻联播 TD-SCDMA被内定?
  4. 学妹问,学网站开发还是打 ACM?
  5. 数字化转型难?那是你没搞懂这5个关键点
  6. 【转载】指导教师的局域网聊天
  7. 飞鸽传书有多少用户?
  8. [图]罗技推出背光键盘
  9. linux多线程冗余,Linux  下的路径冗余
  10. hql分页获取数据总数_最简洁的分页插件PageHelper