Qt应用开发(基础篇)——工具箱 QToolBox

一、前言

QToolBox类继承于QFrame,QFrame继承于QWidget,是Qt常用的基础工具部件。

框架类QFrame介绍

QToolBox工具箱类提供了一列选项卡窗口,当前项显示在当前选项卡下面,适用于分类浏览内容展示操作指引这一类的使用场景。

二、QToolBox类

1、count

该属性表示当前工具箱选项卡的数量。

cpp 复制代码
int count() const    //获取选项卡数

2、currentIndex

该属性表示当前显示选项卡的下标,如果选项卡数量为0,则返回-1。

cpp 复制代码
int currentIndex() const            //获取当前选项卡下标
void setCurrentIndex(int index)     //设置当前选项卡下标

3、公共方法

1)增加选项卡

使用addItem在尾部插入选项卡。

cpp 复制代码
int addItem(QWidget *widget, const QIcon &iconSet, const QString &text)
int addItem(QWidget *w, const QString &text)

2)插入选项卡

使用InsertItem在任意位置插入选项卡,如果索引index超出范围,那么插入到尾部。

cpp 复制代码
int insertItem(int index, QWidget *widget, const QIcon &icon, const QString &text)
int insertItem(int index, QWidget *widget, const QString &text)

3)移除选项卡

使用removeItem移除目标下标的选项卡,这里是从工具箱中移除,而不是删除部件。

cpp 复制代码
void removeItem(int index)

4)设置/获取选项卡图标

cpp 复制代码
QIcon itemIcon(int index) const
void setItemIcon(int index, const QIcon &icon)

5)设置/读取选项卡文本

cpp 复制代码
QString itemText(int index) const
void setItemText(int index, const QString &text)

6)设置/读取选项卡提示文本

cpp 复制代码
QString itemToolTip(int index) const
void setItemToolTip(int index, const QString &toolTip)

7)设置/读取选项卡显示项

cpp 复制代码
QWidget *widget(int index) const
QWidget *currentWidget() const
void setCurrentWidget(QWidget *widget)

8)设置/读取选项卡使能

cpp 复制代码
bool isItemEnabled(int index) const
void setItemEnabled(int index, bool enabled)

9)查找选项卡

使用indexOf查找某选项卡的索引,如果不存在则返回-1。

cpp 复制代码
int indexOf(QWidget *widget) const

4、信号

当前选项卡改变的时候触发信号。

cpp 复制代码
void currentChanged(int index)

5、示例

cpp 复制代码
QLabel *lab1 = new QLabel("大话西游");
QLabel *lab2 = new QLabel("整蛊专家");
QLabel *lab3 = new QLabel("功夫");
QWidget *widget1 = new QWidget();
QVBoxLayout *lay1 = new QVBoxLayout();

lay1->addWidget(lab1);
lay1->addWidget(lab2);
lay1->addWidget(lab3);
widget1->setLayout(lay1);
tool->addItem(widget1,"周星驰");

QLabel *lab4 = new QLabel("寒战");
tool->addItem(lab4,"刘德华");

QLabel *lab5 = new QLabel("赌神");
tool->addItem(lab5,"周润发");

执行结果:

相关推荐
Morwit2 分钟前
Qt qml创建c++类的单例对象
开发语言·c++·qt
June`2 分钟前
IO模型全解析:从阻塞到异步(高并发的reactor模型)
linux·服务器·网络·c++
YxVoyager7 分钟前
Qt C++ :QRegularExpression 正则表达式使用详解
c++·qt·正则表达式
闻缺陷则喜何志丹9 分钟前
【回文 字符串】3677 统计二进制回文数字的数目|2223
c++·算法·字符串·力扣·回文
李余博睿(新疆)11 分钟前
c++分治算法
c++
qq_4017004113 分钟前
QStackedLayout 实现遮罩层
qt
oioihoii16 分钟前
Protocol Buffers 编码原理深度解析
c++
消失的旧时光-194317 分钟前
函数指针 + 结构体 = C 语言的“对象模型”?——从 C 到 C++ / Java 的本质统一
linux·c语言·开发语言·c++·c
郝学胜-神的一滴21 分钟前
Linux系统编程:深入理解读写锁的原理与应用
linux·服务器·开发语言·c++·程序人生
Larry_Yanan21 分钟前
Qt多进程(十一)Linux下socket通信
linux·开发语言·c++·qt