一、前言
QToolBox类继承于QFrame,QFrame继承于QWidget,是Qt常用的基础工具部件。
框架类QFrame介绍
QToolBox工具箱类提供了一列选项卡窗口,当前项显示在当前选项卡下面,适用于分类浏览、内容展示、操作指引这一类的使用场景。
二、QToolBox类
1、count
该属性表示当前工具箱选项卡的数量。
int count() const //获取选项卡数
2、currentIndex
该属性表示当前显示选项卡的下标,如果选项卡数量为0,则返回-1。
int currentIndex() const //获取当前选项卡下标
void setCurrentIndex(int index) //设置当前选项卡下标
3、公共方法
1)增加选项卡
使用addItem在尾部插入选项卡。
int addItem(QWidget *widget, const QIcon &iconSet, const QString &text)
int addItem(QWidget *w, const QString &text)
2)插入选项卡
使用InsertItem在任意位置插入选项卡,如果索引index超出范围,那么插入到尾部。
int insertItem(int index, QWidget *widget, const QIcon &icon, const QString &text)
int insertItem(int index, QWidget *widget, const QString &text)
3)移除选项卡
使用removeItem移除目标下标的选项卡,这里是从工具箱中移除,而不是删除部件。
void removeItem(int index)
4)设置/获取选项卡图标
QIcon itemIcon(int index) const
void setItemIcon(int index, const QIcon &icon)
5)设置/读取选项卡文本
QString itemText(int index) const
void setItemText(int index, const QString &text)
6)设置/读取选项卡提示文本
QString itemToolTip(int index) const
void setItemToolTip(int index, const QString &toolTip)
7)设置/读取选项卡显示项
QWidget *widget(int index) const
QWidget *currentWidget() const
void setCurrentWidget(QWidget *widget)
8)设置/读取选项卡使能
bool isItemEnabled(int index) const
void setItemEnabled(int index, bool enabled)
9)查找选项卡
使用indexOf查找某选项卡的索引,如果不存在则返回-1。
int indexOf(QWidget *widget) const
4、信号
当前选项卡改变的时候触发信号。
void currentChanged(int index)
5、示例
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,"周润发");
执行结果: