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

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

程序示例精选

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

如需安装运行环境或远程调试,可点击右边主头像昵称进入个人主页查看博主联系方式,由专业技术人员远程协助!

前言

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


文章目录

       一、所需工具软件

       二、使用步骤

               1. 引入库

               2. 创建切换操作函数

               3. 运行结果

        三在线协助


一、所需工具软件

         1. Visual Stuido

         2. C++

二、使用步骤

1.引入库

代码如下(示例):

#include "MainWindow.h"

image.gif

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;
}
//鼠标左键点在边框上按压移动窗口结束

image.gif

3.运行结果如下:

image.gif编辑


三、在线协助:

如需安装运行环境或远程调试, 可点击右边 主头像 昵称 进入个人主页查看博主联系方式 ,由专业技术人员远程协助!
1)远程安装运行环境,代码调试
2)Qt, C++, Python入门指导
3)界面美化
4)软件制作


博主推荐文章:python人脸识别统计人数qt窗体-CSDN博客

博主推荐文章:Python Yolov5火焰烟雾识别源码分享-CSDN博客

                        Python OpenCV识别行人入口进出人数统计_python识别人数-CSDN博客

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

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


相关文章
|
2月前
(8)Qt中的自定义信号
本文介绍了如何在Qt框架中创建和使用自定义信号,并通过一个父子窗口切换的示例来展示自定义信号的实现和应用。
104 3
(8)Qt中的自定义信号
|
4月前
|
C++
C++ PCL 沿着自定义的平面做横截面(直通滤波)
C++ PCL 沿着自定义的平面做横截面(直通滤波)
49 0
|
5月前
|
数据安全/隐私保护 C++ 计算机视觉
Qt(C++)开发一款图片防盗用水印制作小工具
文本水印是一种常用的防盗用手段,可以将文本信息嵌入到图片、视频等文件中,用于识别和证明文件的版权归属。在数字化和网络化的时代,大量的原创作品容易被不法分子盗用或侵犯版权,因此加入文本水印成为了保护原创作品和维护知识产权的必要手段。 通常情况下,文本水印可以包含版权声明、制作者姓名、日期、网址等信息,以帮助识别文件的来源和版权归属。同时,为了增强防盗用效果,文本水印通常会采用字体、颜色、角度等多种组合方式,使得水印难以被删除或篡改,有效地降低了盗用意愿和风险。 开发人员可以使用图像处理技术和编程语言实现文本水印的功能,例如使用Qt的QPainter类进行文本绘制操作,将文本信息嵌入到图片中,
199 1
Qt(C++)开发一款图片防盗用水印制作小工具
|
2月前
(7)Qt中的自定义槽(函数)
这篇文章介绍了在Qt中如何定义和使用自定义槽函数,包括类成员函数、静态类成员函数、全局函数和lambda表达式作为槽函数的示例,以及使用lambda表达式时的注意事项。
67 2
(7)Qt中的自定义槽(函数)
|
4月前
|
搜索推荐 C++
【Qt 学习笔记】Qt窗口 | 对话框 | 创建自定义对话框
【Qt 学习笔记】Qt窗口 | 对话框 | 创建自定义对话框
148 4
|
5月前
|
数据可视化 开发者 C++
Qt(C++)使用QChart静态显示3个设备的温度变化曲线
QChart模块是Qt Charts库的基础,提供了用于创建和显示各种类型图表的类和接口。Qt Charts库是一个功能丰富、易于使用的数据可视化工具库,可以帮助开发者在应用程序中添加漂亮而又交互性强的图表。
81 1
Qt(C++)使用QChart静态显示3个设备的温度变化曲线
|
4月前
【qt】自定义对话框(2)
【qt】自定义对话框(2)
32 0
|
4月前
【qt】自定义对话框(1)
【qt】自定义对话框(1)
39 0
|
4月前
|
C++ 容器
C++中自定义结构体或类作为关联容器的键
C++中自定义结构体或类作为关联容器的键
49 0
|
5月前
|
存储 JSON 数据可视化
Qt(C++)使用QChart动态显示3个设备的温度变化曲线
Qt的QChart是一个用于绘制图表和可视化数据的类。提供了一个灵活的、可扩展的、跨平台的图表绘制解决方案,可以用于各种应用程序,如数据分析、科学计算、金融交易等。
302 1