QT之多个控件隐藏/显示(通用方法不仅适用于QT)

本文介绍了如何在QT环境中利用容器控件和页面类来管理多个控件的隐藏和显示,通过菜单栏事件响应实现界面的动态切换。详细讲解了设置容器属性和编写控制代码的方法,并提供了VS2022中QT开发的相关教程链接。
摘要由CSDN通过智能技术生成

多个控件隐藏和显示

写在前面

在进行界面开发的工作时,常常涉及到不同界面的开发。尤其是通过菜单栏控制。
在前边,我们已经讲过如果将QT环境中的菜单栏点击事件与相应的功能(槽)函数进行连接,并实现相应的控件隐藏和显示。
但是一个成熟的软件,肯定不仅仅只有几个控件需要隐藏和显示。那么我们该如何做呢?
跟着我,一起往下看。

QT之容器控件

容器概念

容器控件是指允许在其内部添加其他控件的控件。在移动容器控件时,可以同时移动添加在容器内的控件。

特殊控件–页面类

在QT中包含着一些特殊的控件,这些控件看起来就像一个完整的页面。
当把这些控件的大小和变化设置为保持与软件大小一致时,就能够实现整个页面的切换。
在这里插入图片描述
添加后设置相关属性,并将需要的控件分别放入相关容器内
在这里插入图片描述
控件内容
在这里插入图片描述
容器属性:只需要将容易拉动到主界面一致大小,无需对其它属性进行更改。
在这里插入图片描述
至此添加完毕。
返回VS2022中,进行代码编写。
使用VS进行QT开发参见这篇文章:https://blog.csdn.net/MelyLenient/article/details/123854069
使用VS开发QT界面,自动生成槽函数参见这篇文章:
https://blog.csdn.net/MelyLenient/article/details/123907803
VS+QT开发添加Action动作参见这篇文章:
https://blog.csdn.net/MelyLenient/article/details/123929215

界面控制代码:

头文件

#pragma once

#include <QtWidgets/QMainWindow>
#include "ui_QtWidgetsApplication1.h"

class QtWidgetsApplication1 : public QMainWindow
{
    Q_OBJECT

public:
    QtWidgetsApplication1(QWidget *parent = Q_NULLPTR);

private:
    Ui::QtWidgetsApplication1Class ui;

    void p_hideControl();
private slots:
    void actionCOMBeSelected();
    void actionNETBeSelected();
};

Cpp文件

#include "QtWidgetsApplication1.h"

QtWidgetsApplication1::QtWidgetsApplication1(QWidget *parent)
    : QMainWindow(parent)
{
    ui.setupUi(this);
    p_hideControl();
}

void QtWidgetsApplication1::p_hideControl()
{
    ui.NETWidget->setVisible(false);
    ui.COMFrame->setVisible(false);
}
void QtWidgetsApplication1::actionCOMBeSelected()
{
    p_hideControl();
    ui.COMFrame->setVisible(true);
}
void QtWidgetsApplication1::actionNETBeSelected()
{
    p_hideControl();
    ui.NETWidget->setVisible(true);
}

下载源码:DownLoad

评论 1
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值