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,"周润发");

执行结果:

相关推荐
愚润求学1 小时前
【C++】类型转换
开发语言·c++
@我漫长的孤独流浪1 小时前
数据结构测试模拟题(4)
数据结构·c++·算法
csdnzzt1 小时前
从内存角度透视现代C++关键特性
c++
jie188945758662 小时前
C++ 中的 const 知识点详解,c++和c语言区别
java·c语言·c++
明月*清风2 小时前
c++ —— 内存管理
开发语言·c++
西北大程序猿3 小时前
单例模式与锁(死锁)
linux·开发语言·c++·单例模式
qq_454175793 小时前
c++学习-this指针
开发语言·c++·学习
超闻逸事4 小时前
【题解】[UTPC2024] C.Card Deck
c++·算法
暴力求解5 小时前
C++类和对象(上)
开发语言·c++·算法
让我们一起加油好吗5 小时前
【基础算法】枚举(普通枚举、二进制枚举)
开发语言·c++·算法·二进制·枚举·位运算