文章详情

短信预约-IT技能 免费直播动态提醒

请输入下面的图形验证码

提交验证

短信预约提醒成功

C/C++ Qt TabWidget如何实现多窗体创建

2023-06-21 23:04

关注

这篇文章主要为大家展示了“C/C++ Qt TabWidget如何实现多窗体创建”,内容简而易懂,条理清晰,希望能够帮助大家解决疑惑,下面让小编带领大家一起研究并学习一下“C/C++ Qt TabWidget如何实现多窗体创建”这篇文章吧。

在开发窗体应用时通常会伴随分页,TabWidget组件配合自定义Dialog组件,可实现一个复杂的多窗体分页结构,此类结构也是ERP等软件通用的窗体布局方案。

首先先来实现一个只有TabWidget分页的简单结构,如下窗体布局,布局中空白部分是一个TabWidget组件,下方是一个按钮,当用户点击按钮时,自动将该窗体新增到TabWidget组件中。

C/C++ Qt TabWidget如何实现多窗体创建

该页面关联代码如下所示,当用户点击on_pushButton_clicked()时自动新增一个窗体并将窗体的Tab设置为指定的IP地址。

t->setTabIcon(cur,QIcon(":/image/1.ico"));    ui->tabWidget->setCurrentIndex(cur);    ui->tabWidget->setVisible(true);}// 关闭Tab时执行void MainWindow::on_tabWidget_tabCloseRequested(int index){    if (index<0)        return;    QWidget* aForm=ui->tabWidget->widget(index);    aForm->close();}// 在无Tab页面是默认禁用void MainWindow::on_tabWidget_currentChanged(int index){    Q_UNUSED(index);    bool en=ui->tabWidget->count()>0;    ui->tabWidget->setVisible(en);}其中的每一个子窗体,都需要动态获取父窗体指针根据指针对自身进行操作,子窗体代码如下.#include "formdoc.h"#include "ui_formdoc.h"#include "mainwindow.h"#include <QVBoxLayout>#include <iostream>FormDoc::FormDoc(QWidget *parent) :    QWidget(parent),    ui(new Ui::FormDoc){    ui->setupUi(this);    QVBoxLayout *Layout = new QVBoxLayout();    Layout->setContentsMargins(2,2,2,2);    Layout->setSpacing(2);    this->setLayout(Layout);    MainWindow *parWind = (MainWindow*)parentWidget(); //获取父窗口指针    QString ref = parWind->GetTableNumber();           // 获取选中标签索引    std::cout << ref.toStdString().data() << std::endl;}FormDoc::~FormDoc(){    delete ui;}

代码运行效果如下:

C/C++ Qt TabWidget如何实现多窗体创建

以上是“C/C++ Qt TabWidget如何实现多窗体创建”这篇文章的所有内容,感谢各位的阅读!相信大家都有了一定的了解,希望分享的内容对大家有所帮助,如果还想学习更多知识,欢迎关注编程网行业资讯频道!

阅读原文内容投诉

免责声明:

① 本站未注明“稿件来源”的信息均来自网络整理。其文字、图片和音视频稿件的所属权归原作者所有。本站收集整理出于非商业性的教育和科研之目的,并不意味着本站赞同其观点或证实其内容的真实性。仅作为临时的测试数据,供内部测试之用。本站并未授权任何人以任何方式主动获取本站任何信息。

② 本站未注明“稿件来源”的临时测试数据将在测试完成后最终做删除处理。有问题或投稿请发送至: 邮箱/279061341@qq.com QQ/279061341

软考中级精品资料免费领

  • 历年真题答案解析
  • 备考技巧名师总结
  • 高频考点精准押题
  • 2024年上半年信息系统项目管理师第二批次真题及答案解析(完整版)

    难度     813人已做
    查看
  • 【考后总结】2024年5月26日信息系统项目管理师第2批次考情分析

    难度     354人已做
    查看
  • 【考后总结】2024年5月25日信息系统项目管理师第1批次考情分析

    难度     318人已做
    查看
  • 2024年上半年软考高项第一、二批次真题考点汇总(完整版)

    难度     435人已做
    查看
  • 2024年上半年系统架构设计师考试综合知识真题

    难度     224人已做
    查看

相关文章

发现更多好内容

猜你喜欢

AI推送时光机
位置:首页-资讯-后端开发
咦!没有更多了?去看看其它编程学习网 内容吧
首页课程
资料下载
问答资讯