QT 子窗体关闭或按钮返回父窗体(零基础保姆级)

这篇具有很好参考价值的文章主要介绍了QT 子窗体关闭或按钮返回父窗体(零基础保姆级)。希望对大家有所帮助。如果存在错误或未考虑完全的地方,请大家不吝赐教,您也可以点击"举报违法"按钮提交疑问。

QT 子窗体关闭或按钮返回父窗体(零基础保姆级最后完整代码和项目下载)

  • 功能

父窗体点击按钮打开子窗体并隐藏父窗体,子窗体点击返回按钮或者关闭按钮后销毁自己并返回父窗体

  • 效果展示
    QT 子窗体关闭或按钮返回父窗体(零基础保姆级)

创建项目MySub

QT 子窗体关闭或按钮返回父窗体(零基础保姆级)

设计UI

  • 打开uidesigner

    QT 子窗体关闭或按钮返回父窗体(零基础保姆级)

  • 设计父窗体ui

    QT 子窗体关闭或按钮返回父窗体(零基础保姆级)

  • 建立子窗体

    QT 子窗体关闭或按钮返回父窗体(零基础保姆级)

  • 设计子窗体UI

    QT 子窗体关闭或按钮返回父窗体(零基础保姆级)

子窗体代码

“subwidget.h”

#ifndef SUBWIDGET_H
#define SUBWIDGET_H

#include <QWidget>

namespace Ui {
class SubWidget;
}

class SubWidget : public QWidget
{
    Q_OBJECT

public:
    explicit SubWidget(QWidget *parent = nullptr);
    ~SubWidget();

private:
    Ui::SubWidget *ui;

signals:
    void subClose();
private:
    void closeEvent(QCloseEvent *){//重写关闭按钮事件
        emit subClose();//发出关闭信号,父窗体接收信号后显示窗体
    }
};

#endif // SUBWIDGET_H

“subwidget.cpp”

#include "subwidget.h"
#include "ui_subwidget.h"

SubWidget::SubWidget(QWidget *parent) :
    QWidget(parent),
    ui(new Ui::SubWidget)
{
    ui->setupUi(this);
    //关联返回按钮点击事件与窗体关闭事件
    connect(ui->pushButton,&QPushButton::clicked,this,&SubWidget::close);
}

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

父窗体代码

“widget.h”

#ifndef WIDGET_H
#define WIDGET_H

#include <QWidget>
#include "subwidget.h"
QT_BEGIN_NAMESPACE
namespace Ui { class Widget; }
QT_END_NAMESPACE

class Widget : public QWidget
{
    Q_OBJECT

public:
    Widget(QWidget *parent = nullptr);
    ~Widget();

private slots:
    void on_pushButton_clicked();

private:
    Ui::Widget *ui;
};
#endif // WIDGET_H

“widget.cpp”文章来源地址https://www.toymoban.com/news/detail-513733.html

#include "widget.h"
#include "ui_widget.h"

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

}

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


void Widget::on_pushButton_clicked()
{
    this->hide();//当前窗体隐藏
    SubWidget *sub = new SubWidget();//新建子窗体
    connect(sub,&SubWidget::subClose,this,&QWidget::show);//关联子窗体关闭信号与父窗体显示事件
    sub->setAttribute(Qt::WA_DeleteOnClose);//设置子窗体属性:关闭即销毁
    sub->show();//显示子窗体
}

到了这里,关于QT 子窗体关闭或按钮返回父窗体(零基础保姆级)的文章就介绍完了。如果您还想了解更多内容,请在右上角搜索TOY模板网以前的文章或继续浏览下面的相关文章,希望大家以后多多支持TOY模板网!

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

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

相关文章

  • Qt信号和槽绑定实例,点击pushbutton按钮触发QLabel文本显示和关闭

    功能简介: 点击qt界面中的open按钮在界面中显示文本,同时按钮变为close按钮,再点击close按钮可以关闭显示文本,同时按钮变为open按钮,继续点击open按钮。。。。。。 关键内容: 1.创建一个qt工程 2.定义一个QPuschButton按钮实例和一个QLabel文本显示实例 3.设置按钮显示内容和

    2024年02月12日
    浏览(44)
  • Qt编程基础 | 第六章-窗体 | 6.1、主窗体QMainWindow类

    QMainWindow是为用户提供主窗口程序的类,包含一个菜单栏(menu bar)、多个工具栏(tool bars)、多个锚接部件(dock widgets)、一个状态栏(status bar)及一个中心部件(central widget),是许多应用程序的基础,其界面布局如下图所示 注意:主窗口QMainWindow有自己的布局管理器,因

    2024年02月06日
    浏览(44)
  • 【Qt UI相关】Qt中如何控制 窗口的最大化、最小化和关闭按钮?一文带你掌握用法

    窗口的最大化、最小化和关闭按钮通常是由操作系统的窗口管理器控制的,而不是由应用程序控制的。这些按钮的行为(例如点击最大化按钮会将窗口的大小调整为屏幕的大小)是由窗口管理器实现的,应用程序通常不能改变这些行为。 在 Qt 中,你可以通过 QWidget::setWindow

    2024年02月11日
    浏览(42)
  • Qt编程基础 | 第六章-窗体 | 6.3、QTableWidget

    QTableWidget是QT中的表格组件类,一般用来展示多行多列的数据,是QT中使用较多的控件之一。QTableWidgetItem用来表示表格中的一个单元格,整个表格都需要用逐个单元格构建起来。 2.1、设置表格的行数与列数 2.2、添加单元格 2.3、表头设置 2.4、设置行表头、列表头是否显示 2.

    2024年02月13日
    浏览(45)
  • layui弹框(上)- 基础参数:弹出层、多按钮、对齐方式、遮罩层(透明度)、定时关闭...的集合

    一、使用layui的第一步:引用layui的js和css文件 link rel=\\\"stylesheet\\\" href=\\\"layui/css/layui.css\\\" / script src=\\\"layui/layui.js\\\"/script 您也可以引用网络资源 script src=\\\"layui.js:https://heerey525.github.io/layui-v2.4.3/layui/layui.js\\\"/script link rel=\\\"stylesheet\\\" href=\\\"https://heerey525.github.io/layui-v2.4.3/layui/css/layui.css\\\" 二、引

    2024年02月02日
    浏览(66)
  • 2.1Qt基础按钮控件

    QT Creator UI 设计界面的按钮组截图如下: 以下是对按钮组控件的一些功能介绍: Push Button 按压按钮:最普通的按钮,按(点击)按钮命令计算机执行一些动作,或者回答问题,比如 windows 开始菜单里的重启,注销,关机等按钮。 Tool Button 工具按钮:工具按钮通常是一个集合,一

    2024年02月06日
    浏览(45)
  • QT基础:QButtonGroup 按钮组的简单演示

    QButtonGroup 是一个按钮组,就是将控件进行组合或分组的一个容器,但是它并不在设计师里面可以直接拉出来用 在使用 QButtonGroup 的时候需要引入一下  #include QButtonGroup 在.pro文件中加入一行 CONFIG += console 可以在运行的时候自动打开控制台 这里创建了两个槽函数,分别绑定

    2024年02月10日
    浏览(43)
  • Qt应用开发(基础篇)——工具按钮类 QToolButton

            QToolButton 类继承于 QAbstractButton ,该部件为命令或选项提供了一个快速访问按钮,通常用于 QToolBar 中。         按钮基类 QAbstractButton          QToolButton 是一个特殊的按钮,一般显示文本,只显示图标,结合toolBar使用。它提供对特定命令或选项的快速访问,

    2024年02月09日
    浏览(56)
  • C# 使用多线程,关闭窗体时,退出所有线程

    this.Close();   只是关闭当前窗口,若不是主窗体的话,是无法退出程序的,另外若有托管线程(非主线程),也无法干净地退出; Application.Exit();  强制所有消息中止,退出所有的窗体,但是若有托管线程(非主线程),也无法干净地退出; Application.ExitThread(); 强制中止调用

    2024年01月18日
    浏览(32)
  • C# winform窗体UI美化后实现最大化、最小化、还原、关闭、窗体移动等等-2023/1/11

    在做winform窗体UI美化时,一般都需要将窗体的FormBorderStyle属性设为None,之后窗体就会没有最上面的标题栏,然后按照UI进行界面的设计。美化的代价就是窗体本来标题栏的相关操作,例如双击自动最大化,再次双击又恢复正常大小,以及上窗体关闭、最小化等功能就都需要自

    2024年02月08日
    浏览(55)

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

支付宝扫一扫打赏

博客赞助

微信扫一扫打赏

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

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

二维码1

领取红包

二维码2

领红包