当前位置: 首页 > news >正文

qt实现窗口的动态切换

先说一下整体思路。页面布局两个widget然后再将定时器和按钮关联起来。

定时器发出信号的时候,随着信号,不断地重新设置widget的宽度,实现窗口的动态切换。

具体操作如下:

class QtWidgetsApplication4 : public QMainWindow
{Q_OBJECT//切换的状态标志位enum class MoveActive{START,MOVING,FINISH};
public:QtWidgetsApplication4(QWidget *parent = Q_NULLPTR);//决定是否显示右边的widgetvoid showWidget(bool isShow);private:Ui::QtWidgetsApplication4Class ui;MoveActive m_status;bool showOrNot;QTimer * m_pTimer = nullptr;
};

具体函数实现如下

void QtWidgetsApplication4::showWidget(bool isShow)
{showOrNot = isShow;m_status = MoveActive::START;m_pTimer->start(30);
}
//首先设置一下窗口的尺寸int width = this->width();this->setFixedWidth(180);//初始状态只显示左边ui.widget_2->setFixedWidth(0);ui.widget_2->setVisible(false);ui.widget->setFixedWidth(195);ui.widget->setVisible(true);connect(ui.pushButton, &QPushButton::clicked, [&] {showWidget(true);});connect(ui.pushButton_2, &QPushButton::clicked, [&] {showWidget(false);});m_pTimer = new QTimer(this);connect(m_pTimer, &QTimer::timeout, [&] {switch (m_status){case QtWidgetsApplication4::MoveActive::START:ui.widget->setVisible(true);ui.widget_2->setVisible(true);m_status = MoveActive::MOVING;break;case QtWidgetsApplication4::MoveActive::MOVING:if (showOrNot){int leftWidth = ui.widget->width();leftWidth -= 10;int rightWidth = ui.widget_2->width();rightWidth += 10;if (rightWidth >= 175|| leftWidth <= 10){rightWidth = 175;leftWidth = 0;ui.widget->setFixedWidth(0);ui.widget_2->setFixedWidth(175);m_status = MoveActive::FINISH;break;}ui.widget->setFixedWidth(leftWidth);ui.widget_2->setFixedWidth(rightWidth);}else {//左侧变宽,右侧变窄int leftWidth = ui.widget->width();int rightWidth = ui.widget_2->width();leftWidth += 10;rightWidth -= 10;if (leftWidth>=175|| rightWidth <= 10){leftWidth = 175;rightWidth = 0;ui.widget->setFixedWidth(175);ui.widget_2->setFixedWidth(0);m_status = MoveActive::FINISH;break;}ui.widget->setFixedWidth(leftWidth);ui.widget_2->setFixedWidth(rightWidth);}break;case QtWidgetsApplication4::MoveActive::FINISH:m_pTimer->stop();break;default:break;}});

相关文章:

qt实现窗口的动态切换

先说一下整体思路。页面布局两个widget然后再将定时器和按钮关联起来。 定时器发出信号的时候&#xff0c;随着信号&#xff0c;不断地重新设置widget的宽度&#xff0c;实现窗口的动态切换。 具体操作如下&#xff1a; class QtWidgetsApplication4 : public QMainWindow {…...

第十七届山东省职业院校技能大赛 中职组“网络安全”赛项资源任务书样题②

第十七届山东省职业院校技能大赛 中职组“网络安全”赛项资源任务书样题② 模块A 基础设施设置与安全加固(200分)A-1 登录安全加固&#xff08;Windows, Linux&#xff09;A-2 Nginx安全策略&#xff08;Linux&#xff09;A-3日志监控&#xff08;Windows&#xff09;A-4中间件…...

【Vulkan入门】09-CreateFrameBuffer

目录 先叨叨git信息关键代码VulkanEnv::FindHostVisitbaleMemoryTypeIndex()TestPipeLine::CreateFramebuffers() 与网上大多数文章不同&#xff0c;其他文章基本上都使用窗口框架&#xff08;X11、GLFW、WSL等&#xff09;提供的surface来显示Vulkan渲染出的图像。我认为那样会…...

FPGA设计-Vivado的Off-Chip Termination设置问题

目录 简介: 设置规则: output strength(输出驱动器的电流驱动能力) slew rate(输出电压压摆率) Pull type(上下拉类型) On-chip termination(输入端/输出端的内置片上端接电阻) 输出端接电阻配置 简介: 经常遇到在FPGA设计时,很多人很迷惑这些关于硬件的终…...

GC常见垃圾回收算法,JVM分代模型

如何判断是垃圾&#xff1f;引用计数器和Root可达性算法 如何进行清除&#xff1f;标记清除、复制、标记整理 堆分代模型&#xff1f;Eden&#xff0c;Surevivor&#xff0c;Tenuring 一个对象从创建到消亡的过程&#xff1f; 对象什么时候进入老年代&#xff1f; 一、GC&a…...

面试题整理(三)

芯冰乐知识星球入口:...

可视化建模以及UML期末复习----做题篇

一、单项选择题。&#xff08;20小题&#xff0c;每小题2分,共40分&#xff09; 1、UML图不包括&#xff08; &#xff09; A、用例图 B、状态机图 C、流程图 D、类图 E、通信图 答案&#xff1a;C、流程图 UML中不包括传统意义上的流程图&#xff0c;流程图通常是指B…...

PostGIS分区表学习相关

在Postgresql中对空间数据进行表分区的实践_postgresql空间数据-CSDN博客文章浏览阅读1.4k次&#xff0c;点赞26次&#xff0c;收藏21次。Postgresql的分区功能允许将一个大表按照特定的规则拆分成多个小的分区表。这样做的好处在于&#xff0c;在查询数据时&#xff0c;可以只…...

JavaEE 【知识改变命运】03 多线程(3)

文章目录 多线程带来的风险-线程安全线程不安全的举例分析产出线程安全的原因&#xff1a;1.线程是抢占式的2. 多线程修改同一个变量&#xff08;程序的要求&#xff09;3. 原子性4. 内存可见性5. 指令重排序 总结线程安全问题产生的原因解决线程安全问题1. synchronized关键字…...

Flash操作 原子写 非原子写

原子和非原子操作 读、修改、写操作 对一个变量 A 1或上0x01&#xff0c;C语言写法&#xff1a; A 1| 0x01; 通过编译转成汇编后&#xff1a; LOAD R1,[#A 1] ; Read a value from A 1 into R1 MOVE R2,#0x01 ; Move the absolute constant 1 into R2 OR R1,R2 ; Bitwise O…...

厦门凯酷全科技有限公司怎么样?

随着短视频和直播带货的兴起&#xff0c;抖音电商平台迅速崛起&#xff0c;成为众多品牌和商家争夺的新战场。在这个竞争激烈的市场中&#xff0c;如何抓住机遇、实现销售增长&#xff0c;成为了每个企业面临的挑战。厦门凯酷全科技有限公司&#xff08;以下简称“凯酷全”&…...

ubuntu 18.04设置命令行历史记录并同时显示执行命令的时间

以下相关详细信息请参考ubuntu官网。 在Ubuntu 18.04中&#xff0c;查看特定用户&#xff08;例如用户broko&#xff09;的命令行历史记录&#xff0c;并同时显示执行命令的时间&#xff0c;可以通过修改用户的shell配置文件来实现&#xff1a; • 设置HISTTIMEFORMAT环境变量…...

推荐系统里面的多任务学习概述

1. 概述 多任务学习&#xff08;multi-task learning&#xff09;&#xff0c;本质上是希望使用一个模型完成多个任务的建模&#xff0c;在推荐系统中&#xff0c;多任务学习一般即指多目标学习&#xff08;multi-label learning&#xff09;&#xff0c;不同目标输入相同的fe…...

解决uview ui赋值后表单无法通过验证

微信小程序中 主要还是文档有这样一段话&#xff1a;//如果需要兼容微信小程序&#xff0c;并且校验规则中含有方法等&#xff0c;只能通过setRules方法设置规则。 添加即可通过 onReady() {//如果需要兼容微信小程序&#xff0c;并且校验规则中含有方法等&#xff0c;只能通过…...

【GL010】C/C++总结(二)

C部分 1. C中类成员的访问权限 无论成员被声明为 public、protected 还是 private&#xff0c;都是可以互相访问的&#xff0c;没有访问权限的限制。在类的外部 &#xff08;定义类的代码之外&#xff09;&#xff0c;只能通过对象访问成员&#xff0c;并且通过对象只能访问 p…...

【合作原创】使用Termux搭建可以使用的生产力环境(五)

前言 在上一篇【合作原创】使用Termux搭建可以使用的生产力环境&#xff08;四&#xff09;-CSDN博客我们讲到了如何让proot-distro中的Debian声音驱动正常&#xff0c;将我们的系统备份后&#xff0c;通过VNC客户端连接到VNC服务器&#xff0c;这一篇我们来讲一下xfce桌面的美…...

初始数据结构

程序数据结构算法 数据结构研究计算机数据&#xff08;元素&#xff09;间关系 包括数据的逻辑结构和存储结构及其&#xff08;数据间&#xff09;操作 一、基本概念 1.1数据 数据即信息的载体&#xff0c;能被输入到计算机中并且能被它识别、存储和处理的符号总称 1.2数据…...

给我的小程序加了个丝滑的搜索功能,踩坑表情包长度问题

前言 最近在用自己的卡盒小程序的时候&#xff0c;发现卡片越来越多&#xff0c;有时候要找到某一张来看看笔记要找半天&#xff0c;于是自己做了一个搜索功能&#xff0c;先看效果&#xff1a; 怎么样&#xff0c;是不是还挺不错的&#xff0c;那么这篇文章就讲讲这样一个搜索…...

MATLAB中的合并分类数组

目录 创建分类数组 串联分类数组 创建具有不同类别的分类数组 串联具有不同类别的数组 分类数组的并集 此示例演示了如何合并两个分类数组。 创建分类数组 创建分类数组 A&#xff0c;其中包含教室 A 中的 25 个学生的首选午餐饮料。 rng(default) A randi(3,[25,1]); …...

ShardingSphere-JDBC

1. 什么是分库分表&#xff1f; 分库分表是一种数据库扩展技术&#xff0c;通过将数据拆分到多个数据库&#xff08;分库&#xff09;或多个表&#xff08;分表&#xff09;中来解决单一数据库或表带来的性能瓶颈。分库分表可以有效提升系统的可扩展性、性能和高并发处理能力&…...

企业如何选择远程控制软件来远程IT运维?

在当今企业的日常运作中&#xff0c;IT运维无疑是核心环节之一&#xff0c;它对于保持企业信息系统的稳定运行和数据安全至关重要。随着科技的快速进步&#xff0c;远程控制软件在IT运维中的应用变得越来越重要。今天&#xff0c;我们就来探讨一下远程控制软件如何助力企业IT运…...

Meta Llama 3.3 70B:性能卓越且成本效益的新选择

Meta Llama 3.3 70B&#xff1a;性能卓越且成本效益的新选择 引言 在人工智能领域&#xff0c;大型语言模型一直是研究和应用的热点。Meta公司最近发布了其最新的Llama系列模型——Llama 3.3 70B&#xff0c;这是一个具有70亿参数的生成式AI模型&#xff0c;它在性能上与4050…...

【银河麒麟高级服务器操作系统】修改容器中journal服务日志存储位置无效—分析及解决方案

了解更多银河麒麟操作系统全新产品&#xff0c;请点击访问 麒麟软件产品专区&#xff1a;https://product.kylinos.cn 开发者专区&#xff1a;https://developer.kylinos.cn 文档中心&#xff1a;https://documentkylinos.cn 服务器环境以及配置 【机型】 整机类型/架构&am…...

go语言zero框架对接阿里云消息队列MQ的rabbit的配置与调用

在 Go 语言中对接阿里云消息队列&#xff08;MQ&#xff09;的 RabbitMQ 配置与调用&#xff0c;首先需要安装和配置相关的 Go 库&#xff0c;并了解如何通过 RabbitMQ 与阿里云消息队列进行交互。 ### 步骤一&#xff1a;安装 RabbitMQ Go 客户端库 阿里云的消息队列&#x…...

《Vue进阶教程》第四课:reactive()函数详解

往期内容&#xff1a; 《Vue零基础入门教程》合集&#xff08;完结&#xff09; 《Vue进阶教程》第一课&#xff1a;什么是组合式API 《Vue进阶教程》第二课&#xff1a;为什么提出组合式API 《Vue进阶教程》第三课&#xff1a;Vue响应式原理 通过前面的学习, 我们了解到r…...

【开源】A065—基于SpringBoot的库存管理系统的设计与实现

&#x1f64a;作者简介&#xff1a;在校研究生&#xff0c;拥有计算机专业的研究生开发团队&#xff0c;分享技术代码帮助学生学习&#xff0c;独立完成自己的网站项目。 代码可以查看项目链接获取⬇️&#xff0c;记得注明来意哦~&#x1f339; 赠送计算机毕业设计600个选题ex…...

memmove函数(带图详解)

c语言系列 文章目录 c语言系列一、memmove函数介绍1.1、函数基本功能1.2、函数参数2.3、函数返回值 二、memmove的使用2.1、拷贝字节不可大于目标空间2.2、同一空间拷贝 三、函数功能的模拟实现3.1、函数参数及其返回值的设定3.2、函数体实现 四、代码实现 一、memmove函数介绍…...

【Java数据结构】时间和空间复杂度

本章开始将进入数据结构的知识&#xff0c;时间复杂度主要衡量的是一个算法的运行速度&#xff0c;而空间复杂度主要衡量一个算法所需要的额外空间&#xff0c;。 时间复杂度 算法中执行的次数决定了时间复杂度。 在计算执行次数时&#xff0c;只需要计算大概的次数&#xff…...

八斗深度学习

八斗深度学习第二周笔记 一、深度学习步骤&#xff1a;1. 选定模型结构2. 模型参数随机初始化3. 构造模型损失函数4. 选择优化算法并设置超参数5. 数据准备与预处理6. 训练模型7. 模型评估8. 测试模型9. 应用模型 损失函数极小值、导向意义 超参数的影响迭代次数epoch批次量大小…...

安卓报错Switch Maven repository ‘maven‘....解决办法

例如&#xff1a;Switch Maven repository ‘maven(http://developer.huawei.com/repo/)’ to redirect to a secure protocol 在库链接上方添加配置代码&#xff1a;allowInsecureProtocol true...

网站制作公司茂名/无限制访问国外的浏览器

最近打开了交接过来的旧代码&#xff0c;编译了一下&#xff0c;出现以下错误&#xff1a; Error[Li005]: no definition for "__disable_interrupt" Error[Li005]: no definition for "__enable_interrupt"解决方法&#xff1a;添加头文件#include <…...

罗湖网站建设的公司哪家好/自己如何制作网页

算术运算符 对变量和数组进行算术运算。 算术运算符&#xff1a;&#xff0c;-&#xff0c;*&#xff0c;/&#xff0c;% &#xff1a;将连个或者多个数值相加 -&#xff1a;将两个数值相减 *&#xff1a;将两个数值相乘 /&#xff1a;将两个数值相除 %&#xff1a;取相除的余数…...

怎样查后缀vc域名网站/百度权重查询爱站网

// // https://www.meitulu.com图片批量下载Node.js爬虫1.03 // 1.00 完成图片爬虫,手动输入页数和目录 // 1.01 改写。 // 1.02 手动输入页面url&#xff0c;然后自动解析 // 1.03 从命令行获得页面url&#xff0c;然后自动解析 // 2017年11月6日 //// 内置https模块&#xff…...

赣州seo快速霸屏/优化营商环境条例

注意事项&#xff1a;1.此项目没有路由&#xff0c;2.没有 API请求 环境配置 请看文档 tauri 文档 第一步&#xff1a;在需要打包的项目根目录执行命令 npm install --save-dev tauri-apps/cli第二步&#xff1a;在 package.json scripts 中添加 tauri "scripts": …...

网站制作过程合理步骤是什么/口碑营销案例及分析

1. 关联 首先&#xff0c;先将多级列表与各个标题相关联。 开始→\rightarrow→多级列表→\rightarrow→定义新的多级列表 设置一级标题 设置二级标题 同理&#xff0c;设置三级标题 2. 设置各标题格式 2.1 显示三级标题 附&#xff1a; 上述设置成功之后&#xff0c;样式栏…...

汽车网站建设流程/网络营销品牌公司

樊登读书——《弹性》自2019年3月22日起运营管理部每周组织部门人员观看樊登读书的视频&#xff0c;通过视频学习的方式&#xff0c;每周学习一本好书&#xff0c;至今已开展50余次。通过每周的视频学习&#xff0c;帮助部门人员坚持读书&#xff0c;增长知识&#xff0c;开拓视…...