QToolButton的例子

来源:互联网 发布:乐天免税店有没有mac 编辑:程序博客网 时间:2024/05/03 05:22
QToolButton的显示图标和文字
11.png是256*256的图片

myWidget::myWidget(QWidget *parent) : QWidget(parent)
{
    //=======================================================
    QToolButton *toolButton= new QToolButton(this);
    QMenu *menu=new QMenu();
    menu->addMenu(tr("0"));
    menu->addMenu(tr("1"));
    menu->addMenu(tr("3"));
    QPixmap pix(":/images/11.png");
    pix = pix.scaled(128,128);
    toolButton->setText(tr("李四"));
    toolButton->setIcon(pix);
    toolButton->setIconSize( pix.size() );
    toolButton->setToolButtonStyle( Qt::ToolButtonTextUnderIcon);//这个是关键:设置图标和文字的位置
    toolButton->setGeometry(0,0,128,128+60);
    //=======================================
}

=========================================================================================
下面是结合QMenu显示下拉框的内容
myWidget::myWidget(QWidget *parent) : QWidget(parent)
{
    QToolButton *toolButton= new QToolButton(this);
    QPixmap pix(":/images/11.png");
    pix = pix.scaled(128,128);
    toolButton->setText(tr("李四"));
    toolButton->setIcon(QPixmap( ":/images/11.png"));
    toolButton->setIconSize( QPixmap( ":/images/11.png").size() );
    toolButton->setToolButtonStyle( Qt::ToolButtonTextUnderIcon);
    toolButton->setPopupMode(QToolButton::InstantPopup   );
    QMenu *menu=new QMenu();
    menu->addMenu(tr("0"));
    menu->addMenu(tr("1"));
    menu->addMenu(tr("3"));
    toolButton->setMenu(menu);
    toolButton->setGeometry(0,0,128,128+60);
    //=======================================
}

0 0