QT设置按钮QPushButton上图片加文字

如何把一个Button的图标设置为图片加文字呢?
我们的思路是把图片文字分别放在QLabel上,并设置布局,再把布局嵌入到QPushbutton。
首先,我们在QTdesigner上放置一个Qpushbutton,按钮名btnLive,并设置其样式表:

QPushButton
{
background-color:#1E90FF;//背景蓝色
border-radius: 10px;  //圆角弧度
}

效果如图所示:
在这里插入图片描述
然后我们在构造函数中加入如下代码:

    //new两个Label,一个放置图片,一个放置文本
    QLabel* labLiveIMG = new QLabel();
    QLabel* labLiveInfo = new QLabel();
    //加载图片到Label
    labLiveIMG->setPixmap(QPixmap(":/Images/mainwin/home_video_btn.png"));
    //设置描述按钮功能的文字
    QString strLiveInfo = QObject::tr("live broadcast");
    labLiveInfo->setText(strLiveInfo);
    //设置文字的字样、字体、颜色等样式及文本框宽度
    labLiveInfo->setStyleSheet("font: 20px 'Microsoft YaHei';color:white;");
    labLiveInfo->setFixedWidth(200);
    //新建布局,把元素一一添加到布局,再把布局设置到按钮上
    QHBoxLayout* LayoutLiveInfo = new QHBoxLayout();
    LayoutLiveInfo->addSpacing(2);
    LayoutLiveInfo->addWidget(labLiveIMG);
    LayoutLiveInfo->addSpacing(10);
    LayoutLiveInfo->addWidget(labLiveInfo);
    LayoutLiveInfo->addStretch();
    _ui.btnLive->setLayout(LayoutLiveInfo);

其中addSpacing可以设置左边距,右边距及图片与文字的间隔。
另外要把图片加载到资源文件qrc中去,否则可能不会显示
在这里插入图片描述
最终我们就大功告成啦~效果:
在这里插入图片描述

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

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

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

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值