当前位置: 首页 > news >正文

Qt容器类控件——QGroupBox和QTabWidget

文章目录

    • QGroupBox
    • 又来点餐
    • QTabWidget
    • 使用演示

QGroupBox

容器类控件即里面可以容纳其他的控件

QGroupBox叫做分组框,可以把其他控件放在里面作为一组

QGroupBox的存在,只是为了让界面更好看一点,并不实现实质性的功能。

当界面较复杂的时候,分组框就可以将具有关联关系的控件,组织到一起。

属性说明
title分组框的标题
alignment分组框内部内容的对齐方式
flat是否为“扁平”模式
checkable是否可选择
设置为true,则在title前方多出一个可勾选的部分
checked描述分组框的选择状态

又来点餐

界面属性设置:

image-20240916164421095

勾选“扁平化”和是否可选择:

image-20240916164701727

QTabWidget

QTabWidget实现一个带有标签页的控件,可以往里面添加widget。然后就可以通过标签页来切换。

核心属性

属性说明
tabPosition标签页所在位置:
North上方
South下方
West左侧
East右侧
currentIndex当前选择了第几个标签页(从0开始就算)
currentTabText当前选择的标签页文本
currentTabName当前选中的标签页的名字
currentTabIcon当前选中标签页的图标
currentTabToolTip当前选中的标签页的提示信息
tabsCloseable标签页是否可以关闭
moveable标签页是否可以移动

核心信号:

信号说明
currentChanged(int)在标签页发生切换时触发,参数为被点击的选项卡编号
tabBarClicked(int)在点击选项卡的标签条的时候触发,参数为被点击的选项卡编号
tabBarDoubleClicked(int)双击选项卡的标签条的时候触发,参数为被点击的选项卡编号
tabCloseRequest(int)在标签页关闭时触发,参数为被关闭的选项卡编号

使用演示

图形化示例:

image-20240916165857641

创建一个程序,带有一个TabWidget作为标签页,设置2个按钮,可以新增和删除标签页

代码示例:

#include "widget.h"
#include "ui_widget.h"
#include<QLabel>
Widget::Widget(QWidget *parent): QWidget(parent), ui(new Ui::Widget)
{ui->setupUi(this);ui->tabWidget->setTabsClosable(true);//标签页当中,添加一个labelQLabel* label1 = new QLabel(ui->tab);label1->setText("标签页1");label1->resize(100, 100);QLabel* label2 = new QLabel(ui->tab_2);label2->setText("标签页2");label2->resize(100, 100);
}Widget::~Widget()
{delete ui;
}void Widget::on_pushButton_clicked()
{//addTab创建//参数1   指定一个QWidget//参数2   指定标签页的标题int count = ui->tabWidget->count();QWidget* w = new QWidget();ui->tabWidget->addTab(w, QString("Tab") + QString::number(count+1));QLabel* label = new QLabel(w);label->setText(QString("标签页") + QString::number(count+1));label->resize(100, 100);//新增完毕之后,设置新增为选中ui->tabWidget->setCurrentIndex(count);
}void Widget::on_pushButton_2_clicked()
{//获取当前标签页下标int index = ui->tabWidget->currentIndex();//删除标签页ui->tabWidget->removeTab(index);
}void Widget::on_tabWidget_tabCloseRequested(int index)
{ui->tabWidget->removeTab(index);
}

GIF 2024-9-16 17-51-22

http://www.lryc.cn/news/443239.html

相关文章:

  • qt-creator-10.0.2之后版本的jom.exe构建和编译速度慢下来了
  • ESP32-WROOM-32 [创建AP站点-TCP服务端-数据收发]
  • 工业机器视觉中的常见需求
  • JavaWeb的Filter详解
  • 【iOS】KVC的学习
  • 影刀RPA实战:网页爬虫之药品数据
  • python禁止位置传参函数
  • java面试题第一弹
  • 住宅HTTP代理:提升网络隐私与安全的新选择
  • 字符串函数(2)
  • Linux--守护进程与会话
  • C++ 笔试常用算法模板
  • 李宏毅2023机器学习作业HW07解析和代码分享
  • ansible远程自动化运维、常用模块详解
  • 【若依框架】按时间查询数据的操作
  • 人工智能将来好就业吗?
  • JAVA SE 11
  • 【MySQ】在MySQL里with 的用法
  • 多源最短路径
  • 在 Mac 中设置环境变量
  • 记录一次ubuntu /mysql/redis/nginx等 系统安装
  • 大型语言模型 (LLM) 劫持攻击不断升级,导致每天损失超过 100,000 美元
  • Java 入门指南:JVM(Java虚拟机)垃圾回收机制 —— 垃圾收集器
  • nano 命令:文本编辑器
  • 【2020工业图像异常检测文献】SPADE
  • C++QT医院专家门诊预约管理系统
  • 在SpringBoot项目中利用Redission实现布隆过滤器(布隆过滤器的应用场景、布隆过滤器误判的情况、与位图相关的操作)
  • 【prefect】python任务调度工具 Prefect | 可视化任务工具 | Python自动化的终极武器 | 高效数据管道管理
  • 蓝禾,汤臣倍健,三七互娱,得物,顺丰,快手,游卡,oppo,康冠科技,途游游戏,埃科光电25秋招内推
  • 【面向对象】设计模式分类