QToolButton设置图标位置

本文介绍了如何使用Qt样式表(QSS)来调整QToolButton的图标位置,使其看起来更加美观。通过设置margin和padding,可以将图标设置在左侧并适当向右移动,或者将图标置于中间且文字向下移动。虽然这种方法无法实现圆角,但提供了一种实用的布局调整方案。
摘要由CSDN通过智能技术生成

设置QToolButton图标位置

QToolButton通过left,top等方式设置的图标,紧靠按钮边缘,视觉效果并不好。
通过网上查找资料和摸索,得出了可行的一种方式,设置按钮的margin和padding;
修改了图标的显示位置,可以设置到想要的位置。

我使用的图标尺寸在20*20以内。
按钮上有4个文字,加上图标,我设置的按钮宽度是105px;

设置图标处于左侧位置向右移动一段距离

使用默认图标靠左方式设置图标

background:url(:/image/image/icon.png) left no-repeat;

效果图:
在这里插入图片描述
图标太靠左,看着视觉效果并不是太好。

通过设置margin-left和padding-left,并设置图片为居中对齐的方式,能达到下图效果。

background:url(:/image/image/icon.png) center no-repeat;

我的按钮宽度105px,设置margin-left:-75px;即把图标从中间位置向左拉了75px的位置。
再设置文字位置,padding-left:85px; 即文字从图标的右边10px位置开始显示。

大家可以这样设定: margin-left = -(按钮width-30)px,padding-left: (按钮width-20)px。

#toolButton {
margin-left:-75px;
padding-left:85px;
background:url(:/image/image/icon.png) center no-repeat;
font-size: 14px;
border: none;
}

实现效果:
在这里插入图片描述

设置图标处于中间位置文字向下移动一段距离

#toolButton{
min-width:55px;
min-height:45px;
border:none;
padding-top:50px;
margin-top:-25px;
margin-left:25px;
background:url(:/image/image/icon.png) center no-repeat;
}

运行结果:
在这里插入图片描述

小遗憾

有个小遗憾就是这样不能设置border-radius,因为margin推出去的部分,并不在border的范围内,设置border-radius也不会变成圆角。
如果有知道其他方法的伙伴也可以给我评论,互相交流。

评论 2
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值