QT-纯代码控件-QToolBox(抽屉控件)

实现一个简单的抽屉展示功能

1.新建一个无ui界面的工程,其基类为dialog对话框

在这里插入图片描述

2.代码实现

dialog.h

添加头文件

#include <QToolBox>		//添加控件

Dialog类中添加私有控件声明

private:
    QToolBox * toolBox;	//控件声明

dialog.cpp

#include "dialog.h"
#include <QPushButton>
#include <QIcon>		//引用图标头文件

Dialog::Dialog(QWidget *parent)
    : QDialog(parent)
{
    toolBox = new QToolBox(this);       	//新建一个QToolBox
    //新建一个wigedt,添加到QToolBox中
    QWidget * widget = new QWidget(toolBox);
    QIcon iconf1(":/img/animal/hourse.ico");
    QPushButton * button1 = new QPushButton(iconf1,"马",widget);  //添加图标
    QIcon iconf2(":/img/animal/cattle.ico");
    QPushButton * button2 = new QPushButton(iconf2,"牛",widget);  //添加图标
    widget->setGeometry(0,0,40,80);     	//设置窗口大小
    button1->setGeometry(10,5,120,60);   	//设置按钮大小
    button2->setGeometry(10,70,120,60);  	//设置按钮大小

    //向QToolBox中添加第一个抽屉,名字为动物
    toolBox->addItem(widget,"动物");
    QIcon iconannimal(":/img/animal/tiger.ico");
    toolBox->setItemIcon(0,iconannimal);    //设置第一个抽屉的图标

    //新建一个QPushButton添加到QToolBox中
    QIcon iconlu(":/img/animal/lu.ico");
    QPushButton * buttonotherannimal = new QPushButton(iconlu,"鹿");

    //向QToolBox中添加第二个抽屉,名字为其他动物
    toolBox->addItem(buttonotherannimal,"其他动物");
    QIcon iconpig(":/img/animal/pig.ico");
    toolBox->setItemIcon(1,iconpig);
    toolBox->setGeometry(0,0,130,200);
    this->resize(130,200);
    this->setWindowTitle("抽屉演示");

}

Dialog::~Dialog()
{

}

3.效果展示

在这里插入图片描述
在这里插入图片描述

4.不足与可改进之处

1.后期可以用以实现更多层叠窗体页面功能

发布了43 篇原创文章 · 获赞 7 · 访问量 9048

猜你喜欢

转载自blog.csdn.net/qq_41488943/article/details/96433099