【Qt】界面组织大师:Qt中的容器控件QGroupBox与QTabWidget

QT的QGroupBox类的使用 详细说明 QGroupBox小部件提供带有标题的组框框架。  一个组框提供一个框架,一个标题在顶部,一个键盘快捷键,并在其内部显示各种其他小部件。键盘快捷键将键盘焦点移到组框的子窗口小部件之一。 QGroupBox还允许您设置标题(通常在构造函数中设置)和标题的对齐方式。组框可以检查。可检查组框中的子窗口小部件是启用还是禁用,具体取决于是否选中了该组框。 您可以通过启用flat属性来最小化组框的空间消耗。在大多数样式中,启用此属性会导致删除框架的左,右和下边缘。 QGroupBox不会自动布置子窗口小部 阅读详情
AI摘要

本文聚焦Qt框架中的容器类控件QGroupBox与QTabWidget。QGroupBox可将有关联的控件组织在一起,让界面更美观有序;QTabWidget能通过标签页管理和切换不同界面内容。还给出使用标签页管理多组控件的代码示例,合理运用这些控件可提升界面美观度与用户体验。

前言:

在GUI(图形用户界面)设计中,良好的组织和布局是提升用户体验的关键因素之一。Qt框架提供了多种控件,允许开发者以灵活和直观的方式构建复杂的界面。本篇文章将重点介绍两种Qt中的容器类控件:QGroupBox和QTabWidget,它们在管理界面元素和增强用户交互方面发挥着重要作用。通过使用这些控件,开发者可以创建清晰、有序且易于导航的界面。

多元素控件,包含内容,是一个一个的自定义好的 “Item” 对象。
容器类控件,包含的内容是前面已经学过的各种控件了。QPushButton,QLineEidit,QLabel等…

1. Group Box

使用 QGroupBox 实现⼀个带有标题的分组框.。可以把其他的控件放到里面作为⼀组. 这样看起来能更好看⼀点。
注意, 不要把 QGroupBox 和 QButtonGroup 混淆。 (之前在介绍 QRadionButton 的时候提
到了 QButtonGroup )。
在这里插入图片描述

GroupBox 的名字可以改。 可以把其他的各种控件放到 GroupBox 中
(这些内部的控件的父元素就不是this了,而是这个GroupBox )
就只是为了让界面看起来更好看一点

当一个界面比较复杂的时候,包含了很多控件的时候,分组框就可以把具有关联关系的控件,组织到一起。
在这里插入图片描述
在这里插入图片描述

之前创建的控件都是以this 来作为父元素的,树形结就是可以一直往下延伸的。

在这里插入图片描述

2. Tab Widget

使用 QTabWidget 实现⼀个带有标签页的控件, 可以往里面添加⼀些 widget. 进⼀步的就可以通过标签页来切换。
在这里插入图片描述
在这里插入图片描述

在这里插入图片描述

2.1. 代码示例: 使用标签页管理多组控件

创建一个程序,带有一个TableWidget 作为标签页。
提供两个按钮,分别创建新的标签页,关闭当前选中的标签页。当切换标签页的时候,也能感知到变化。

#include "widget.h"
#include "ui_widget.h"
#include <QLabel>
#include <QDebug>

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

    // 现在每个标签页中, 添加一个Lable
    QLabel* label1 = new QLabel(ui->tab);
    label1->setText("标签页1");
    label1->resize(100, 50);

    QLabel* label2 = new QLabel(ui->tab_2);
    label2->setText("标签页2");
    label2->resize(100, 50);

    // TableWidget 上面的关闭标关闭页面
    connect(ui->tabWidget, &QTabWidget::tabCloseRequested, this, &Widget::closeTab);
}

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


void Widget::on_pushButton_clicked()
{
    // 使用 addTab 方法来创建新的标签页
    // 参数1 要指定一个 QWidget
    // 参数2 指定这个标签页的 text(标题), 此处标题就叫做 Tab + 数字
    int count = ui->tabWidget->count();
    QWidget* w = new QWidget();
    ui->tabWidget->addTab(w, QString("Tab ")+ QString::number(count+1));
    // 添加一个 QLabel 显示内容
    QLabel* label = new QLabel(w);
    label->setText(QString("标签页 ") + QString::number(count + 1));
    label->resize(100, 50);
    // 设置新标签页被选中
    ui->tabWidget->setCurrentIndex(count);
}

void Widget::on_pushButton_2_clicked()
{
    // 获取到当前选中的标签页下标
    int index = ui->tabWidget->currentIndex();
    // 删除标签页
    ui->tabWidget->removeTab(index);
}

void Widget::closeTab(int index)
{
    ui->tabWidget->removeTab(index);
}



void Widget::on_tabWidget_currentChanged(int index)
{
    qDebug() << "当前选中的标签页是:" << index;
}

在这里插入图片描述

总结:

本文详细介绍了Qt中的两种容器控件:QGroupBox和QTabWidget。QGroupBox通过分组框的方式,帮助开发者将界面上的控件进行逻辑分组,使得界面更加整洁和美观。而QTabWidget则提供了一种通过标签页来管理和切换不同界面内容的方法,使得用户可以方便地在不同的视图或数据集之间切换。通过代码示例,我们展示了如何使用这些控件来创建和管理标签页,以及如何响应用户的操作,如创建新标签页、关闭当前选中的标签页,以及在标签页切换时获取通知。这些控件的合理运用,不仅能够提升应用的界面美观度,还能增强用户的操作体验,使得应用更加人性化和易于使用。

详解Qt之QGroupBox、QToolBox与QStackedWidget 在 Qt 框架中,QGroupBoxQToolBox和是三个用于组织和管理用户界面的控件。这些控件帮助开发者创建结构化且直观的用户界面,使得应用程序的界面更加清晰和易于使用。本文将详细介绍这三个控件的基本概念、功能、常用函数(包括槽函数)、信号及其触发时机,并提供示例代码,帮助开发者更好地理解和使用这些控件。QGroupBox是 Qt 提供的一个控件,用于将一组相关控件组织在一个边框内,并且可以为这个组设置标题。它通常用于将界面中的相关控件分组,使界面更加整洁和易于理解。QToolBox。 阅读详情

相关推荐

使用QGroupBox类实现Qt窗口组的管理

接着创建了一个QGroupBox,并设置了组框的标题为“选项”。我们还使用QCheckBox类创建了两个复选框,并将它们添加到了QVBoxLayout布局管理器中。最后,我们将这个布局管理器设置为组框的布局,并将组框添加到主窗口的布局管理器中。使用QGroupBox类主要有两个步骤:创建组框和将其他控件添加到组框中。QGroupBox是Qt中常用的组件之一,它可以对其他组件进行分组并提供边框效果,方便用户在图形界面上对不同的选项进行组织和管理。总之,QGroupBox类可以方便地实现Qt窗口组的管理。

SVIPCODE的博客 328

Qt容器组件(一)之QGroupBox、QScrollArea、QToolBox、QTabWidget

QGroupBox为构建分组框提供了支持。分组框通常带有一个边框和一个标题栏,作为容器部件来使用,在其中可以布置各种窗口部件。分组框的标题通常在上方显示,其位置可以设置为靠左、居中、靠右、自动调整这几种方式之一。位于分组框之中的窗口部件可以获得应用程序的焦点,位于分组框之内的窗口部件是分组框的子窗口,通常使用addWidget()方法把子窗口部件加入到分组框之中。Qt示例:\Examples\Qt-5.9.3\widgets\widgets\groupbox中提供了QGroupBox的示例。

hw5230的博客 4887

axi ps读写pl_PL读写DDR:Datamover能干什么

最近发现工程项目中一直在用AXI-DMA。这玩意儿搬数据倒是没问题,就是用axi-lite配置起来非常反人类。。。简单的办法其实是用datamover ip核。这个ip核能干嘛呢。准备写个文章解析一下。由于好多feature没用过,所以仅仅看文档可能理解有误,欢迎指出错误。首先扫个盲:MM2S指的是Memory map to stream. 读DDR. S2MM指的是steam to memory...

weixin_35908791的博客 1597

【Qt笔记】QGroupBox控件详解

QGroupBox 是 Qt 框架中一个非常有用的控件,它主要用于组织和管理一组相关的控件(如按钮、复选框、文本框等),并为这些控件提供一个框架和标题。

qq_52924376的博客 6808

SOLIDWORKS无法获得下列许可 无效的使用许可号码(-8,544,0) 解决办法大全

SOLIDWORKS无法获得下列许可 无效的使用许可号码(-8,544,0) 解决办法大全。版本:SolidWorks2021。电脑:惠普战66四代。软件安装不困难!

qq_43596278的博客 11万+

# 执行 DISM 命令时出错 87 未在此上下文中识别出 restorehealth 选项。解决方法

# 执行 DISM 命令时出错 87 未在此上下文中识别出 restorehealth 选项。解决方法

段子手168的博客 1万+

QGroupBox 类(组框)、QButtonGroup 类(按钮组)

/信号, qt5.2。值为: Qt::AlignLeft(左对齐, 默认值)、 Qt::AlignRight (右对齐)、 Qt::AlignHCenter。1、 QGroupBox(组框),直接继承自 QWidget 类,因此使用该类创建的对象,可作为窗口使用, 组框在外观上是可见的。,若此属性为 true,则只绘制组框顶部的边框(见右图),也就是说组框左、右和下侧的边框不会被绘制。QQAbstractButton::Click()或 QAbstractButton::animateClick()时。

zxf347085420的博客 2659

【项目案例】前后端分离项目 【Web图书管理系统 】SpringBoot + Vue + Element UI + Mysql

Web图书管理系统

激流丶的博客 5397

Qt应用开发(基础篇)——组合框容器 QGroupBox

QGroupBox继承于QWidget,是一个带有标题的组合框架容器控件。QGroupBox组合框容器自带一个顶部标题,一个面板。面板内部展示各种各样的部件,标题用来解释这些部件为什么集合在一起,并且支持键盘快捷方式切换部件焦点。比如下图是一个串口设置的属性,可能包含串口号、波特率、校验位、停止位、开关按钮等信息。QGroupBox一般直接在构造函数设置它的标题,精简解释组合框名称。组合框还可以具有选中checkable。

波塞冬的博客 4064

EEGLAB数据预处理基本流程GUI实操指南

按钮,会出现如上图所示的长条形对话框,方框里面是所有电极的名称,这时将需要的剔除的电极选择上,如上图,我选择了 VEOG这个电极(该电极表示是垂直眼电),然后点“OK”,在弹出的对话框中自行确定是否需要修改命名。坏导是指在数据采集时,由于各种原因(如,电极本身问题或阻抗不好等)导致数据记录有问题,但是在后期又特别想要该通道的数据,那么就可以利用插值的方法进行——利用该导联周边的几个电极点的均值作为该导的数据。上图的图是通过IClabel的工具箱进行自动判断的,可以帮助自动识别出哪些是Eye的成分。

fdgdf5535的博客 6395

Codex 100个真实案例 - 用AI绘制CAD机械图纸(工程师看了直呼内行)

本案例将展示如何用 Codex 生成 Python 脚本,通过 `ezdxf` 库绘制标准 DXF 格式的 CAD 机械图纸。我们会从零开始,逐步实现直线、圆、圆弧、标注等基本图形元素,最终绘制出一张包含主视图、俯视图、尺寸标注、标题栏和技术要求的完整法兰盘零件图。还会演示参数化批量生成不同规格零件图和自动 BOM 物料清单,生成的 DXF 文件可直接在 AutoCAD、FreeCAD 中打开。全程用自然语言驱动 Codex,工程师看完直接上手!

yueyeguzhuo的专栏 2075

『 QT 』容器类控件

本文介绍了Qt中的QGroupBox控件及其应用。QGroupBox是一个带有标题的分组框,可用于将其他控件分组以优化布局和界面美观。文章对比了QGroupBox与QButtonGroup的区别,详细说明了QGroupBox的核心属性(如title、alignment、flat、checkable等)。通过一个点餐系统的代码示例,展示了如何使用QGroupBox进行分组布局,包括初始化控件、设计辅助函数、实时更新显示内容等功能。示例中还演示了checkable和flat属性的效果,展示了如何通过属性设置改变

小侯宝的博客 1378

杰理蓝牙SPP用户接口详细文档

本文档详细介绍了基于JL701n芯片的蓝牙SPP用户接口实现。主要内容包括:1) 文件结构分析,包含必要的头文件和调试配置;2) 核心数据结构,如全局变量和TWS功能ID定义;3) 五大功能模块实现:数据发送、状态管理、数据接收、TWS支持和初始化清理;4) API接口说明,包括公共接口函数和回调函数;5) 使用教程,涵盖基本流程和高级应用示例。该接口支持虚拟串口连接,实现蓝牙设备间数据传输,特别针对TWS场景进行了优化,提供连接状态管理、数据收发等功能。文档还包含错误处理、重试机制等实用建议,适合蓝牙SP

qq_42014563的博客 1179

【Qt 学习笔记】Qt常用控件 | 容器类控件 | Group Box的使用及说明

QGroupBox是Qt框架中的一个窗口小部件,用于组合其他小部件并将它们分组显示。它通常用于创建有组织结构的界面,例如设置对话框或选项面板。QGroupBox可以包含其他小部件,例如按钮、标签、文本框等。通过将这些小部件放置在QGroupBox内部,可以将它们与其他小部件分组在一起,并向用户提供一种直观的界面组织方式。分组框只是⼀个⽤来 “美化界面” 这样的组件, 并不涉及到⽤⼾交互和业务逻辑.

小黄鸭的博客 2580

Android16 自定义HAL层适配一些VINTF和SELINUX问题修改

在RK里面一般权限矩阵在/rockchip/common/manifests/目录,我这版Android16的代码比较特殊,这里重点修改/device/rockchip/rockchip_generic/manifests/frameworks_compatibility_matrix.xml这个文件,不同的版本注册方式不同,在。hal_ruip_default.te,hal_ruip.te,attributes文件。拓展策略的方式添加,但是在Android16里面发现用不了。发现HAL层服务注册成功了。

tzj1058756809的博客 242

efm32 入门.pdf

本PDF共计22页,介绍的是操作驱动API,下载与否自己斟酌。

Qt之QGroupBox

QGroupBox窗口部件提供了一个有标题的组合框。 组合框提供一个框架、一个标题和一个键盘快捷键,并且显示在它里面地其它不同窗口部件。标题在上面,键盘快捷键移动键盘焦点到组合框的一个子窗口部件,并且子窗口部件将会排列在这个框架中地一个数组中。

liuhongwei123888的专栏 4万+

NTscan扫描工具

ntscan是一个扫描器,可以扫描没有密码和弱密码的共享,先到配置文件中填写猜测的用户名和密码,扫描过程中右侧出现的是扫描日志。

qt QGroupBox详解

QGroupBox是Qt框架中的一个容器控件,主要用于组织和管理一组相关的控件(如按钮、复选框、文本框等),并为这些控件提供一个框架和标题。通过使用QGroupBox,可以创建具有逻辑分组和视觉层次结构的用户界面,使得界面更加清晰和易于理解。在创建分组的控件或信息时,QGroupBox非常有用,比如在表单、设置面板中,用于将相关的选项或控件归纳在一起,提高用户体验。

ckg3824278的博客 1097

假人有限元模型

假人模型,车辆碰撞假人有限元模型,适合做乘员安全的研究者利用

IEM模型,地表粗糙度模拟

利用微波反演土壤水分时候,利用IEM模型可以实现对随机地表的模拟

QGroupBox超简洁实现自动收缩

QGroupBox遗憾的是,向它里面添加控件,只能通过布局器。当我们想要自定义控件在QGroupBox中的位置时,可以将控件放到QWidget中,然后将QWidget通过布局器放到QGroupBox中。SizeConstraint参数智能选择SetFixedSize和SetMinAndMaxSize,这是是布局管理器可以自动调节大小。设置QGroupBox使能。设置组合框的标题文本。

weixin_43246170的博客 1512

31-容器和容器控件-分组框容器QGroupBox

QGroupBox 通常带有一个边框和一个标题栏标题栏上可以有勾选项,标题栏可以放到左边、中间或右边。布局时 QGroupBox 可用作一组控件的容器,内部使用布局控件(如 QBoxLayout)进行布局。分组框控件 QGroupBox 通常是其他控件的容器,将一组意义相同意义的控件放到 QGroupBox 中。用QGroupBox类创建实例对象的方法如下所示。分组框控件的信号有 clicked(),clicked(bool)和 toggled(bool)分组框控件QGroupBox的常用方法如表所示。

***** 804

Qt 容器类控件

Group Box;Tab Widget

ikun66666的博客 1562

【QT】Qt之容器控件(QGroupBox)

【QT】Qt之容器控件(QGroupBox) 简述 QGroupBox小部件提供带有标题的组框框架。 一个组框提供一个框架,一个标题,一个快捷键,并在其内部显示其他各种小部件。键盘快捷键将键盘焦点移到组框的子窗口小部件之一。 功能描述 QGroupBox还允许您设置标题(通常在构造函数中设置)和标题的对齐方式。组框可以被选中。可选中组框中的子窗口小部件是否启用,取决于是否选中了该组框。 您可以通过启用flat属性来最小化组框的空间消耗。在大多数样式中,启用此属性会导致删除框架的左,右和底边缘。 QGroup

qq_43331089的博客 8157

QT原生控件-QGroupBox的使用及样式

本文主要介绍的是使用代码生成的情况下对控件的介绍,包括拥有的功能及能修改的样式,也会说明在qtdesiner拖拽控件生成和使用代码生成控件的区别(如果有的话,遇到了的会说),此版本不属于最终版本,以后遇到什么新奇的点会继续更新!本文基于QT官方的文档进行的编写,QT版本为qt 5.14.0,编写环境为Windows11。不得不说官方文档真是个好东西,有时候有些不会的上去一看就能有灵感解决了,可惜没有中文版本的。

Telaye的博客 1569

Qt中常用容器组控件介绍和实操

Qt中常用容器组控件介绍和实操 Group Box Scroll Area Tab Widget Frame Dock Widget

wei_Embedded_z的博客 2320

QGroupBox类详细介绍

python。

wanglaqqqq的博客 626

QGroupBox

一、描述 QGroupBox 提供框架、顶部的标题、键盘快捷键,并在其内部显示各种其他小部件。 二、属性成员 1、alignment : Qt::Alignment 组框标题的对齐方式。默认为 Qt::AlignLeft。 Qt::AlignLeft:左侧对齐。 Qt::AlignRight:右侧对齐。 Qt::AlignHCenter:水平居中对齐。 2、checkable : bool 标题中是否有复选框。 如果选中该复选框,则启用组框的子项;否则,它们将被禁用且无法访问。

友善啊,朋友的博客 3733

Qt QGroupBox简单说明

QGroupBox的说明 QGroupBox是一个带有标题的组合框,其标题处于组合框的线上。 接下来大致说明如何将一些控件加入至QGroupBox框中显示: 首先需要先定义组合框的指针函数 QGroupBox *createGroupBox;在此函数中,则可以创建需要的布局以显示需要的控件,具体如下: 先在头文件定义: //QGroupBox类型 QGroupBox *creatGroup1(); QGroupBox *creatGroup2(); 在构造函数中创建一个QGridB

weixin_38516302的博客 8950
上一篇: 【题解】 走迷宫(BFS)
下一篇: 【Qt】布局之道:Qt界面设计中的五大布局管理器:垂直布局QVBoxLayout,水平布局QHBoxLayout,网格布局QGridLayout,表单布局QFormLayout,QSpacerItem
Q_hd
Q_hd 新星创作者: C/C++技术领域 新星创作者: C/C++技术领域
博客等级 码龄6年 2058粉丝 194原创
评论
成就一亿技术人!
拼手气红包6.0元
还能输入1000个字符
 
 条评论被折叠 查看
添加红包

请填写红包祝福语或标题

个

红包个数最小为10个

元

红包金额最低5元

当前余额3.43元 前往充值 >
需支付:10.00元
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包

打赏作者

Q_hd

你的鼓励将是我创作的最大动力

¥1 ¥2 ¥4 ¥6 ¥10 ¥20
扫码支付:¥1
获取中
扫码支付

您的余额不足,请更换扫码支付或充值

打赏作者

实付元
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

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

余额充值