1.使用QpushButton自带的API实现:
void setIcon(const QIcon &icon) void setText(const QString &text)
该方法使用了自带的函数设置,缺点是无法自由调整图标和文字之间的间距
2.使用Qlabel和布局嵌入在自带的QpushButton中
QLabel* label = new QLabel(); QLabel* label2 = new QLabel(); label2->setStyleSheet(QString("border:1px solid red;")); label->setStyleSheet(QString("border:1px solid red;")); label2->setPixmap(QPixmap("E:/QtCode/QPushbuttonPaintIcon/upgrade.png")); label->setText("升级工具"); label->setFixedWidth(80); QHBoxLayout* myLayout = new QHBoxLayout(); myLayout->addSpacing(10); myLayout->addWidget(label2); myLayout->addSpacing(30); myLayout->addWidget(label); myLayout->addStretch(); ui->pushButton->setLayout(myLayout);