QT中使用QTabWidget实现多对话框的切换

在QT嵌入式Linux项目中,利用QTabWidget实现多对话框的切换。通过设计师界面创建主界面和子对话框,引用子对话框的头文件,并在主对话框的cpp中编写切换代码,通过槽函数响应标签页点击事件,实现不同对话框的显示。最终测试成功,达到预期效果。
摘要由CSDN通过智能技术生成

多对话框切换的实现

最近在做嵌入式Linux的QT界面,需要用到标签页实现不同对话框的切换,然后在QT中使用QTabWidget来实现该功能,特此记录下,自己踩过的坑。

主界面

该QT界面的主界面是使用QT的设计师界面创建的,即mainwindow(主界面),然后在mainwindow.ui的设计师界面中插入Tab Widget,插入后的界面如下所示,并将Tab Widget重新命名为Change_Dialog。
在这里插入图片描述

子界面

在整个工程中插入子对话框,在工程中使用Add New插入新的对话框,本界面中新的对话框使用的也是设计师界面,新建对话框的过程的界面如下所示,选择的是Dialog without Buttons,然后点下一步,在下一步中输入类名,即可创建出新的子对话框。
在这里插入图片描述
在创建好的子对话框中放入一个button,用来测试释放通过标签页来切换对话框是否成功。FileDialog为本博主新建的子对话框
在这里插入图片描述

在主对话框的.cpp中引用新建的子对话框的.h头文件

在主对话框的.h中引用新建的子对话框的.h头文件,即可在主对话框中调用子对话框的类文件,在mainwindow.h文件中引入三个界面变量,FileDialog,SetRecordModel和SetData都为新建的子对话框

// An highlighted block
#ifndef MAINWINDOW_H
#define MAINWINDOW_H

#include <QMainWindow>
#include <QTableWidget>
#include <QDebug>
#include <QApplication>
#include <QDesktopWidget>
#include "filedialog.h"
#include "setrecordmodel.h"
#include "setdata.h"
QT_BEGIN_NAMESPACE
namespace Ui {
    class MainWindow; }
QT_END_NAMESPACE

class MainWindow : public QMainWindow
{
   
    Q_OBJECT

public:
  • 7
    点赞
  • 20
    收藏
    觉得还不错? 一键收藏
  • 0
    评论
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值