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

QT多窗口跳转

快速上手:

1.项目新建跳过,先新建一个文件,右击add new

2.选择QT  ->QT 设计师界面类

3.下一步(mainwindow或者widget根据自己需求,此处用mainwindow做演示)

4.因为我之前创建过,所以此处类名我设置为new_widget_6(建议自行改动,加深记忆),然后下一步

5.继续下一步

6.接下来跳转到ui,拖拽一个pushbutton,设置返回主界面按钮

7.接着右击转到槽

8.选择clicked()

9.在new_widget_6.cpp中添加代码

void new_widget_6::on_pushButton_clicked()
{this->parentWidget()->show();   //调用parentWidget()返回上一界面的this指针,并显示delete this;      //关闭本窗口
}

完整代码

#include "new_widget_6.h"
#include "ui_new_widget_6.h"new_widget_6::new_widget_6(QWidget *parent) :QMainWindow(parent),ui(new Ui::new_widget_6)
{ui->setupUi(this);
}new_widget_6::~new_widget_6()
{delete ui;
}void new_widget_6::on_pushButton_clicked()
{this->parentWidget()->show();   //调用parentWidget()返回上一界面的this指针,并显示delete this;      //关闭本窗口
}

10.在主界面添加ui

11.依旧右击转到槽,选择clicked()

12。接着在mainwindow.cpp中添加代码

先添加头文件

#include "new_widget_6.h"
void MainWindow::on_pushButton_6_clicked()
{new_widget_6 *win = new new_widget_6(this);win->show();    //显示子界面this->hide();   //关闭主界面
}

完整代码

#include "mainwindow.h"
#include "ui_mainwindow.h"#include "new_widget.h"
#include "new_widget_2.h"
#include "new_widget_3.h"
#include "new_widget_4.h"
#include "new_widget_5.h"
#include "new_widget_6.h"MainWindow::MainWindow(QWidget *parent) :QMainWindow(parent),ui(new Ui::MainWindow)
{ui->setupUi(this);
}MainWindow::~MainWindow()
{delete ui;
}void MainWindow::on_pushButton_clicked()
{//传递主界面的this指针给跳转界面,否则子界面无法调用parentWidget()new_widget *win = new new_widget(this);win->show();    //显示子界面this->hide();   //关闭主界面
}void MainWindow::on_pushButton_2_clicked()
{new_widget_2 *win = new new_widget_2(this);win->show();    //显示子界面this->hide();   //关闭主界面
}void MainWindow::on_pushButton_3_clicked()
{new_widget_3 *win = new new_widget_3(this);win->show();    //显示子界面this->hide();   //关闭主界面
}void MainWindow::on_pushButton_4_clicked()
{new_widget_4 *win = new new_widget_4(this);win->show();    //显示子界面this->hide();   //关闭主界面
}void MainWindow::on_pushButton_5_clicked()
{new_widget_5 *win = new new_widget_5(this);win->show();    //显示子界面this->hide();   //关闭主界面
}void MainWindow::on_pushButton_6_clicked()
{new_widget_6 *win = new new_widget_6(this);win->show();    //显示子界面this->hide();   //关闭主界面
}

12.编译运行

结果:可以点击相互跳转,推荐根据需求对于步骤9中的分界面处理选择隐藏或者删除

http://www.dtcms.com/a/398748.html

相关文章:

  • 栈(Stack)
  • 整体设计 逻辑全链 之8 受控的自然语言-字面拼凑:正则表达式 之2
  • 攻防世界-Web-simple_php
  • 【Linux我做主】进程程序替换和exec函数族
  • 清华最新发布 | 大型推理模型的强化学习综述
  • C++异常处理的根本缺陷:隐式传播的性能陷阱与控制流断裂
  • 【东枫】USRP X310 母版 PCB
  • 山东锦华建设集团有限公司网站嘉瑞建设有限公司网站
  • 食品品牌网站策划美容行业培训网站建设
  • Amazon Timestream新用户实时分析:从零到上手完整指南
  • 淘宝联盟个人网站怎么做电商平台入驻
  • 在 Oracle SQL 中实现 `IF-ELSE` 逻辑 SQL 错误 [12704] [72000]: ORA-12704: 字符集不匹配
  • 勒索软件专攻数据库弱点:Oracle 服务器安全防线告急
  • 常用的表空间维护语句
  • MySQL笔记---数据库基础
  • 【数据迁移】:oracle 大数据上线失败复盘:【大表定义变更】不一致导致生产数据灌入失败及解决方案
  • InnoDB一致性读与锁定读全解析
  • Oracle归档及数据库存储空间查询
  • 怎么用wordpress建外贸网站华丽的网站模板
  • 如何在Linux系统里将新添加磁盘进行分区挂载
  • 公司网站案例免费域名建站
  • 抓包解析MCP协议:基于JSON-RPC的MCP host与MCP server的交互
  • 一“网”跨协议,万“设”皆可通!耐达讯自动化Modbus TCP转Profibus ,让控制无界,让能源有道。
  • 江门网站优化公司衡水seo网站建设优化排名
  • [2025CVPR-域泛化方向]:通过改进损失景观实现更好的域泛化
  • 网站开发商怎么关闭图片显示公司网站费怎么做分录
  • ABAC权限模型实战:实现“上班才能访问财务系统”!
  • 深入解析:使用递归计算整数各位数字之和的C语言实现
  • 第1章:初识Linux系统——第4节:文件操作命令2
  • 众云网联做的网站效果好吗深圳网站设计公司排名榜