QT之多个界面相互切换 (stackedWidget控件)

这篇具有很好参考价值的文章主要介绍了QT之多个界面相互切换 (stackedWidget控件)。希望对大家有所帮助。如果存在错误或未考虑完全的地方,请大家不吝赐教,您也可以点击"举报违法"按钮提交疑问。

stackedWidget控件:   可以自由在多个widget切换,可以通过点击顶部菜单,显示不同界面,在实际开发中应用很广泛。

1. 添加控件, 在设计界面左侧添加 stackedWidget控件

QT之多个界面相互切换 (stackedWidget控件)

2. 增加几个  widget 界面

QT之多个界面相互切换 (stackedWidget控件)

 3. 将这几个 widget 插入到 stackedWidget

首先定义 一个枚举量, 存放每个界面的编号

enum eStackedWidgetID{eForm1 = 0,eForm2,eForm3};  // 页码编号

 在添加时候,建议用   insertWidget   而不用 addWidget,这样在切换界面时候不容易出错,调整顺序和增加新界面时候, 只需修改上面的枚举,其他不用修改。

MainWindow::MainWindow(QWidget *parent)
    : QMainWindow(parent)
    , ui(new Ui::MainWindow)
{
    ui->setupUi(this);

    m_form1 = new Form1(this);
    m_form2 = new Form2(this);
    m_form3 = new Form3(this);

    ui->stackedWidget->insertWidget(eForm1,m_form1);
    ui->stackedWidget->insertWidget(eForm2,m_form2);
    ui->stackedWidget->insertWidget(eForm3,m_form3);

    ui->stackedWidget->setCurrentIndex(eForm1);
}

MainWindow::~MainWindow()
{
    delete ui;
}


void MainWindow::on_pushButton_clicked()
{
    ui->stackedWidget->setCurrentIndex(eForm1);
}

void MainWindow::on_pushButton_2_clicked()
{
    ui->stackedWidget->setCurrentIndex(eForm2);
}

void MainWindow::on_pushButton_3_clicked()
{
     ui->stackedWidget->setCurrentIndex(eForm3);
}

界面效果就不展示了文章来源地址https://www.toymoban.com/news/detail-503343.html

到了这里,关于QT之多个界面相互切换 (stackedWidget控件)的文章就介绍完了。如果您还想了解更多内容,请在右上角搜索TOY模板网以前的文章或继续浏览下面的相关文章,希望大家以后多多支持TOY模板网!

本文来自互联网用户投稿,该文观点仅代表作者本人,不代表本站立场。本站仅提供信息存储空间服务,不拥有所有权,不承担相关法律责任。如若转载,请注明出处: 如若内容造成侵权/违法违规/事实不符,请点击违法举报进行投诉反馈,一经查实,立即删除!

领支付宝红包 赞助服务器费用

相关文章

  • C++ Qt 学习(二):常用控件使用与界面布局

    ui 设计器设计界面很方便,为什么还要手写代码? 更好的控制布局 更好的设置 qss 代码复用 完全不会写 Qt 布局,很麻烦,怎么学会手写布局? 看 Qt 自己怎么写 改良 Qt 的布局写法 1.1 水平布局 addWidget() 在布局里添加一个控件 addLayout() 在布局里添加子布局 setMargin() 设置水平

    2024年02月06日
    浏览(42)
  • [QT基础]QT不同ui界面的简单切换(C++)

            window10,QT 5.11.1,语言c++         设计两个ui界面,能实现一个ui界面到另一个ui界面的跳转。 为了以防万一,如果是第一次使用qt创建ui界面可以参考以下博客 QT界面创建 1,代码思路         两个ui界面,使用一个按钮进行页面的切换,考虑到实际的应用场景,

    2024年02月03日
    浏览(30)
  • QT之一个UI里边多界面切换

    环境:VS2019+QT_tools 从网上查看了许多大神的帖子,先将多界面切换的方法总结如下: 1.可以通过QT Designer中添加Containers控件里的Stacked Widget实现同一个UI里的页面切换,可以通过鼠标右键或者代码实现增减页操作 2.可以通过建立多个UI文件,然后设置选择其中一个显示,其他隐

    2024年02月11日
    浏览(23)
  • QT自定义优雅的表单控件,简单实现设置界面布局

    FormView.h FormView.cpp 核心函数 函数 变量 功能 addEditableItem title: 输入框前面的提示文字,同时作为该控件的标识符 place_holder: 输入框中的提示文字 在表单中插入一个可填写项 addCheckableItem title: 不显示在UI中,仅作为该控件的标识符 content: 勾选框后面的内容 init_status: 勾选框的初

    2024年02月11日
    浏览(33)
  • Qt 不规则窗口,不规则按钮,不规划控件 不规则界面

    类似: Qt 实现 不规则样式设置,不是视觉欺骗,是真正的不规则 ,点击外面不会触发按钮的点击信号. 效果: 显示成一张图片中的图形,使用带有透明区域的png图片; 这里注意:  必须重新绘制,构造函数也一定要调用resize。 见视频,可见,点击到空白处,消失;可见实

    2024年02月09日
    浏览(35)
  • 【QT】如何快速查找和获取界面上的控件(findChild 和 findChidren)

    函数原型: 返回该对象的子对象,该子对象可以转换为类型T。 T: T为模板,需要查找什么类型就写什么类型。 name: 为对象的名称 参数 Qt::FindChildOptions options: (1)Qt::FindDirectChildrenOnly:只查看对象的直接子对象 (2)Qt::FindChildrenRecursively:查看对象的所有子对象(递归搜索

    2024年02月08日
    浏览(30)
  • QT界面调用ui,定义主MainWindow中的子控件的槽函数

    在QT的应用中,不可避免需要使用QtDesigner,创建的ui如何调用呢,这里给出我的调用方法。  所有设计做完后,保存ui文件,终端输入: 得到ui.h文件,新建mainwindow.h文件,输入: 新建mainwindow.cpp文件,输入: 新建main.cpp文件,输入: 编译即可,编译需要编写pro文件。 除此之外,

    2024年02月12日
    浏览(32)
  • 【Visual Studio】Qt 在其他 cpp 文件中调用操作 ui 界面控件

    知识不是单独的,一定是成体系的。更多我的个人总结和相关经验可查阅这个专栏:Visual Studio。 还整了一个如何相互之间调用函数的文章,感兴趣可以看:【Visual Studio】Qt 在其他 cpp 文件中调用主工程下文件中的函数。 主界面工程为 A ,添加的文件名字为 test ,目标是在

    2024年02月05日
    浏览(39)
  • 【QT】C++和QML使用多线程优化界面切换卡顿的方法

    qt提供了一种声明式语言qml,可以使用一些可视组件以及这些组件之间的交互来描述用户界面,而c++可以只负责后台逻辑的处理,将界面和后台分离开来,由qml来做UI界面,c++负责后端处理,对我个人来说,这样的方式大大的方便了对界面和逻辑的修改和维护; 由于UI界面是工

    2024年01月19日
    浏览(34)
  • 【五一创作】VS+Qt主界面内嵌自定义控件的四种方法以及不同自定义控件数据交互

    在Qt界面开发过程中,一个主界面或者主窗口看成是各个控件排列组合后的集合,对于一些项目而言,有些常用的控件可以封装成自己想要的控件样式并且复用,比如说,log显示控件,图像/视频显示控件等,可以将常用的控件代码封装起来,以便下次复用,内嵌在不同的主界

    2024年02月11日
    浏览(53)

觉得文章有用就打赏一下文章作者

支付宝扫一扫打赏

博客赞助

微信扫一扫打赏

请作者喝杯咖啡吧~博客赞助

支付宝扫一扫领取红包,优惠每天领

二维码1

领取红包

二维码2

领红包