Qt+C++自定义标题栏最大最小化关闭堆叠切换美化

news2024/11/24 17:10:20

 程序示例精选

Qt+C++自定义标题栏最大最小化关闭堆叠切换美化

如需安装运行环境或远程调试,见文章底部个人微信名片,由专业技术人员远程协助!

前言

这篇博客针对<<Qt+C++自定义标题栏最大最小化关闭堆叠切换美化>>编写代码,代码整洁,规则,易读。 学习与应用推荐首选。


文章目录

        一、所需工具软件

        二、使用步骤

                1. 引入库

                2. 创建切换操作函数

                3. 运行结果

         三在线协助


一、所需工具软件

          1. Visual Stuido

          2. C++

二、使用步骤

1.引入库

代码如下(示例):

#include "MainWindow.h"

2.创建切换操作函数

代码如下(示例):

//MainWindow.cpp指针实例化

	page = new subwin1(this);//指针实例化
	page_2 = new subwin2(this);

	//![2]多页面添加到堆叠页面里面
	ui.stackedWidget->addWidget(page);
	ui.stackedWidget->addWidget(page_2);
	ui.stackedWidget->setCurrentWidget(page);

//subwin1.cpp窗体引入

#include "subwin1.h"
subwin1::subwin1(QWidget *parent)
	: QWidget(parent)
{
	ui.setupUi(this);
}

subwin1::~subwin1()
{
}

//subwin2.cpp窗体引入

#include "subwin2.h"
subwin2::subwin2(QWidget *parent)
	: QWidget(parent)
{
	ui.setupUi(this);
}

subwin2::~subwin2()
{
}

//按钮最小化窗口
void MainWindow::on_btnMenu_Min_clicked()
{
	this->showMinimized();  
}

//按钮最大化窗口
#include<qdesktopwidget.h>
void MainWindow::on_btnMenu_Max_clicked()
{
	if (max) {
		this->setGeometry;
		//IconHelper::Instance()->SetIcon(ui->btnMenu_Max, QChar(0xf096), 10);
		ui.pushButton_5->setToolTip("最大化");
	}
	else {
		location = this->geometry();
		this->setGeometry(desktop()->availableGeometry());
		//IconHelper::Instance()->SetIcon(ui->btnMenu_Max, QChar(0xf079), 10);
		ui.pushButton_5->setToolTip("还原");
	}
	max = !max;
}

void MainWindow::on_btnMenu_Close_clicked()
{
	qApp->exit();
}


//鼠标双击自定义标题栏最大化与还原
bool MainWindow::eventFilter(QObject* obj, QEvent* event)
{
	if (event->type() == QEvent::MouseButtonDblClick) {
		this->on_btnMenu_Max_clicked();
		return true;
	}
	
}


//鼠标左键点在边框上按压移动窗口
#include<QMouseEvent>
void MainWindow::mouseMoveEvent(QMouseEvent* e)
{
	if (mousePressed && (e->buttons() && Qt::LeftButton) && !max) {
		this->move(e->globalPos());
		
	}
}

void MainWindow::mousePressEvent(QMouseEvent* e)
{
	if (e->button() == Qt::LeftButton) {
		mousePressed = true;
		mousePoint = e->globalPos();

	}
}

void MainWindow::mouseReleaseEvent(QMouseEvent*)
{
	mousePressed = false;
}
//鼠标左键点在边框上按压移动窗口结束

3.运行结果如下: 

 

三、在线协助: 

如需安装运行环境或远程调试,见文章底部个人微信名片,由专业技术人员远程协助!

1)远程安装运行环境,调试代码

2)Qt, C++, Python入门培训

3)界面美化

4)软件制作

个人博客主页:alicema1111的博客_CSDN博客-Python,C++,网页领域博主 

博主所有文章点这里:alicema1111的博客_CSDN博客-Python,C++,网页领域博主 

本文来自互联网用户投稿,该文观点仅代表作者本人,不代表本站立场。本站仅提供信息存储空间服务,不拥有所有权,不承担相关法律责任。如若转载,请注明出处:http://www.coloradmin.cn/o/169592.html

如若内容造成侵权/违法违规/事实不符,请联系多彩编程网进行投诉反馈,一经查实,立即删除!

相关文章

这几个办公技巧竟还不知道

技巧一&#xff1a;压缩文件大小 我们可以通过压缩文件大小的方法来减少电脑内存&#xff0c;正好Windows就有自带的压缩包可以操作。 首先我们可以用鼠标右击文件&#xff0c;选择“添加到压缩文件”&#xff0c;最后系统即可帮我们自动压缩文件大小。技巧二&#xff1a;定时清…

C++封装对MySQL的基本操作

1.环境搭建在这里&#xff0c;我将使用vscode来搭建MySQL的编程环境。首先&#xff0c;下载MySQL&#xff0c;配置好系统环境变量并运行MySQL数据库。接着&#xff0c;vscode扩展中搜索并下载MySQL与MySQL Syntax插件。安装完成后&#xff0c;在资源管理器的MySQL栏中点击号&am…

从0到1完成一个Node后端(express)项目(五、session、token)

往期 从0到1完成一个Node后端&#xff08;express&#xff09;项目&#xff08;一、初始化项目、安装nodemon&#xff09; 从0到1完成一个Node后端&#xff08;express&#xff09;项目&#xff08;二、下载数据库、navicat、express连接数据库&#xff09; 从0到1完成一个Nod…

“暗黑天使”降临:DarkAngels勒索病毒全解密

恶意文件分析 恶意文件描述 近期&#xff0c;深信服深盾终端实验室在运营工作中发现了一种 ELF 格式的勒索软件&#xff0c;该勒索软件近期开始出现&#xff0c;其释放的勒索信中的 Onion 链接似乎已关闭&#xff0c;这表明该勒索软件可能仍在开发中。 经过分析&#xff0c;…

AtCoder Beginner Contest 281 (A-F,口胡G)青大acmer 日常vp

A - Count Down 输出小于等于nnn的数 代码 B - Sandwich Number 题意 问字符串是否是第一个和最后一个字符是大小写&#xff0c;中间的字符是100000−99999100000-99999100000−99999之间的数字。 暴力模拟即可&#xff0c;需要注意的例子是A0100000AA0100000AA0100000A 代码 …

day14-常用API

1.API 1.1 API概述【理解】 什么是API ​ API (Application Programming Interface) &#xff1a;应用程序编程接口 java中的API ​ 指的就是 JDK 中提供的各种功能的 Java类&#xff0c;这些类将底层的实现封装了起来&#xff0c;我们不需要关心这些类是如何实现的&#xff…

VScode-git提交 无法推送refs到远端

在将代码同步到远端仓库时&#xff0c;弹窗提醒”无法推送refs到远端。您可以试着运行”拉取”功能&#xff0c;整合您的更改“ 但尝试后发现“拉取”功能也无法解决问题&#xff0c;最后是因为文件过大原因&#xff0c;在这里记录一下解决方法&#xff0c;并整理了另一种可能…

传输层协议:套接字Socket

介绍 socket是一种操作系统提供的进程间通信机制。 在操作系统中&#xff0c;通常会为应用程序提供一组应用程序接口&#xff08;API&#xff09;&#xff0c;称为套接字接口&#xff08;英语&#xff1a;socket API&#xff09;。应用程序可以通过套接字接口&#xff0c;来使…

大数据分析案例-基于决策树算法构建金融反欺诈分类模型

&#x1f935;‍♂️ 个人主页&#xff1a;艾派森的个人主页 ✍&#x1f3fb;作者简介&#xff1a;Python学习者 &#x1f40b; 希望大家多多支持&#xff0c;我们一起进步&#xff01;&#x1f604; 如果文章对你有帮助的话&#xff0c; 欢迎评论 &#x1f4ac;点赞&#x1f4…

春节期间外贸老鸟们都会掌握的那些事(内含祝福话术及邮件模板)

中国外贸规模在长期疫情的大环境下&#xff0c;外贸业界克服诸多困难&#xff0c;实现了量稳质升。随着我们迈入2023年&#xff0c;外贸人除了需要继续“强身健体”外&#xff0c;同时也将面临更多的挑战&#xff0c;本期Boom将从四个维度给大家分享临近中国春节期间&#xff0…

入门PostgreSQL,pg的历史,为什么说pg是国产化的方向,与mysql的比较

目录一、PG简介1、PG的历史2、PG的社区3、PostgreSQL与MySQL的比较一、PG简介 PostgreSQL 是一个免费的对象-关系数据库服务器(ORDBMS)&#xff0c;在灵活的BSD许可证下发行。 PostgreSQL 开发者把它念作 post-gress-Q-L。 PostgreSQL 的 Slogan 是 “世界上最先进的开源关系…

python-MySQL数据库基础(三)MySQL与python交互

MySQL与python交互 用python代码来连接数据库&#xff0c;执行SQL语句&#xff0c;来查询到数据库中的数据。 当一张表中的数据量比较多时&#xff0c;而我们只需要查询其中的某个字段数据&#xff0c;直接查询会导致效率降低&#xff0c;此时就需要建立分表。 python操作MySQ…

君乐宝,高端之路不好走

文|螳螂观察 作者|kinki 近日&#xff0c;奶粉巨头雅培发表声明称&#xff0c;将逐步停止中国大陆市场的婴幼儿和儿童营养产品的运营和销售&#xff0c;一直以来&#xff0c;雅培都是中国奶粉市场前十名的“常客”&#xff0c;但近年却跌出了“前十”的位置。 雅培的退出&am…

2023年DataWhale 1月Free Excel 第三次打卡

第三章 Excel的表合并 Excel的合并计算工具可以快速完成多个表的行列记录合并。 1.多表行合并 问题&#xff1a;在3个消费表格中&#xff0c;每个客户的消费金额不同&#xff0c;使用多表合并功能统计每个客户消费的总金额。 具体步骤&#xff1a; 1.选择需要汇总的单元格…

ZooKeeper 技术内幕|Leader 选举是一个什么样的过程

几个问题&#xff0c;引发思考&#xff1a; 什么时候 leader 选举&#xff1f; 选举的过程&#xff1f; 选举过程中&#xff0c;是否能提供服务&#xff1f; 选举结果&#xff0c;是否会丢失数据&#xff1f; 服务器角色 2 个小问题&#xff1a; 服务器节点有多少角色&…

如何实现连杆码垛机械臂的逆解计算?

1. 连杆码垛机械臂介绍 连杆码垛机器人是工业应用场景中常用的一种机械臂&#xff0c;常用于简单的大负载搬运作业场景。常见的连杆码垛机械臂都是4个自由度&#xff0c;相较于6轴和7轴的机械臂成本较低。 连杆码垛机械臂的运动特性是&#xff1a;末端始终平行于地面。第一个平…

【算法】一篇文章弄清楚KMP算法的实现

目录 前言&#xff1a; 一.KMP算法简介&#xff1a; 二.next数组的介绍及实现 三.next数组的优化 四.伪代码和完整代码的实现 总结&#xff1a; 博客主页&#xff1a;张栩睿的博客主页 欢迎关注&#xff1a;点赞收藏留言 系列专栏&#xff1a;c语言学习 家人们写博客真…

小白的性能测试探索之路(1)

​​​​​​​ 某一天&#xff0c;领导突然就拉了个会说&#xff0c;我们成立稳定性专项&#xff0c;以测试为主力提升服务的整体稳定性&#xff1f; 当时我的内心是&#xff1a;“what”&#xff0c;性能测试我完全没接触过呀&#xff0c;i am a little tester&#xff5e;而…

华为MPLS-HubSub组网实验配置

目录 配置接口IP地址以及底层IGP协议 配置MPLS LDP协议 Sub与Hub建立Vpnv4邻居 配置PE与CE对接命令 Sub-PE与CE对接配置 Hub与CE对接配置 发现问题 PE与CE之间都采用EBGP方式进行路由传递 MPLS隧道——Hub&Spoke组网_静下心来敲木鱼的博客-CSDN博客_hub spokehttps…

Flume第二章:企业案例

系列文章目录 Flume第一章&#xff1a;环境安装 Flume第二章&#xff1a;企业案例 文章目录系列文章目录前言一、复制和多路复用1.案例需求2.案例实现3.结果查看二、负载均衡和故障转移1.需求案例2.案例实现3.结果查看三、聚合1.案例需求2.案例实现3.查看结果总结前言 这次我…