仿qq界面的抽屉类QToolBox

#include <QWidget>
#include <QToolBox>
#include <QToolButton>

class Drawer : public QToolBox
{
    Q_OBJECT

public:
    Drawer(QWidget *parent = 0);
    ~Drawer();
};

//源文件
#include "widget.h"
#include <QVBoxLayout>
#include <QGroupBox>

Drawer::Drawer(QWidget *parent)
    : QToolBox(parent)
{
    QGroupBox *box = new QGroupBox;
    QToolButton *btn1_1 = new QToolButton;
    btn1_1->setText("种马的西瓜");
    btn1_1->setIcon(QPixmap(":/images/Cherry.png"));
    //设置按钮的大小,将其设置成图片大小
    btn1_1->setIconSize(QPixmap(":/images/Cherry.png").size());
    //当鼠标离开时自动恢复为弹起状态
    btn1_1->setAutoRaise(true);
    /*
     * ToolButtonStyle属性主要用来描述按钮的文字和图标的显示方式
       ToolButtonIconOnly,      只显示图标
       ToolButtonTextOnly,      只显示文字
       ToolButtonTextBesideIcon,        文字显示在图标旁
       ToolButtonTextUnderIcon,         文字显示在图标下面
       ToolButtonFollowStyle            遵循Style标准
     */
    btn1_1->setToolButtonStyle(Qt::ToolButtonTextBesideIcon);


    QToolButton *btn1_2 = new QToolButton;
    btn1_2->setText("二妹");
    btn1_2->setIcon(QPixmap(":/images/dr.png"));
    btn1_2->setIconSize(QPixmap(":/images/jj.png").size());
    btn1_2->setAutoRaise(true);
    btn1_2->setToolButtonStyle(Qt::ToolButtonTextBesideIcon);


    QToolButton *btn1_3 = new QToolButton;
    btn1_3->setText("夕阳红");
    btn1_3->setIcon(QPixmap(":/images/lswh.png"));
    btn1_3->setIconSize(QPixmap(":/images/lswh.png").size());
    btn1_3->setAutoRaise(true);
    btn1_3->setToolButtonStyle(Qt::ToolButtonTextBesideIcon);


    QToolButton *btn1_4 = new QToolButton;
    btn1_4->setText("西西");
    btn1_4->setIcon(QPixmap(":/images/qmnn.png"));
    btn1_4->setIconSize(QPixmap(":/images/qmnn.png").size());
    btn1_4->setAutoRaise(true);
    btn1_4->setToolButtonStyle(Qt::ToolButtonTextBesideIcon);


    QToolButton *btn1_5 = new QToolButton;
    btn1_5->setText("你的蛋蛋在忧伤");
    btn1_5->setIcon(QPixmap(":/images/qq.png"));
    btn1_5->setIconSize(QPixmap(":/images/qq.png").size());
    btn1_5->setAutoRaise(true);
    btn1_5->setToolButtonStyle(Qt::ToolButtonTextBesideIcon);


    QVBoxLayout *layout1 = new QVBoxLayout;
    layout1->addWidget(btn1_1);
    layout1->addWidget(btn1_2);
    layout1->addWidget(btn1_3);
    layout1->addWidget(btn1_4);
    layout1->addWidget(btn1_5);
    box->setLayout(layout1);



    QGroupBox *box1 = new QGroupBox;
    QToolButton *btn2_1 = new QToolButton;
    btn2_1->setText("牛在飞");
    btn2_1->setIcon(QPixmap(":/images/spqy.png"));
    btn2_1->setIconSize(QPixmap(":/images/spqy.png").size());
    btn2_1->setAutoRaise(true);
    btn2_1->setToolButtonStyle(Qt::ToolButtonTextBesideIcon);

    QToolButton *btn2_2 = new QToolButton;
    btn2_2->setText("人在吹");
    btn2_2->setIcon(QPixmap(":/images/wy.png"));
    btn2_2->setIconSize(QPixmap(":/images/wy.png").size());
    btn2_2->setAutoRaise(true);
    btn2_2->setToolButtonStyle(Qt::ToolButtonTextBesideIcon);

    QVBoxLayout *layout2 = new QVBoxLayout;
    layout2->addWidget(btn2_1);
    layout2->addWidget(btn2_2);
    box1->setLayout(layout2);



    QGroupBox *box2 = new QGroupBox;
    QToolButton *btn3_1 = new QToolButton;
    btn3_1->setText("牛逼的人");
    btn3_1->setIcon(QPixmap(":/images/ymrl.png"));
    btn3_1->setIconSize(QPixmap(":/images/ymrl.png").size());
    btn3_1->setAutoRaise(true);
    btn3_1->setToolButtonStyle(Qt::ToolButtonTextBesideIcon);

    QToolButton *btn3_2 = new QToolButton;
    btn3_2->setText("牛渣的蛋");
    btn3_2->setIcon(QPixmap(":/images/qq.png"));
    btn3_2->setIconSize(QPixmap(":/images/qq.png").size());
    btn3_2->setAutoRaise(true);
    btn3_2->setToolButtonStyle(Qt::ToolButtonTextBesideIcon);


    QVBoxLayout *layout3 = new QVBoxLayout;
    layout3->addWidget(btn3_1);
    layout3->addWidget(btn3_2);
    box2->setLayout(layout3);

    this->addItem(box,"好友");
    this->addItem(box1,"同学");
    this->addItem(box2,"陌生人");
}

Drawer::~Drawer()
{

}

 

 

  • 0
    点赞
  • 1
    收藏
    觉得还不错? 一键收藏
  • 0
    评论

“相关推荐”对你有帮助么?

  • 非常没帮助
  • 没帮助
  • 一般
  • 有帮助
  • 非常有帮助
提交
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值