Qt控件-QTabWidget

本文介绍如何在Qt中解决QTabWidget的图标显示问题,包括正确的图标路径设置方式,以及如何通过代码和QSS来调整图标大小、标题栏高度和字体大小。

摘要生成于 C知道 ,由 DeepSeek-R1 满血版支持, 前往体验 >

QTabWidget的标题栏图标无法显示

icon添加的方式如下:

    QIcon iconTab1(":/image/bullet_green.png");
    pTabConfigPanel->addTab(pWgtTab1, iconTab1, QStringLiteral("参数设置"));

下面的是错误的方式,

    QIcon iconTab1("url(:/image/bullet_green.png"));
    pTabConfigPanel->addTab(pWgtTab1, iconTab1, QStringLiteral("参数设置"));

因为路径是从stylesheet直接拷贝过来,但是这儿不能加url的label。

QTabWidget调整标题栏字体图标大小和标题栏高度

未调整前是这个样子:
这里写图片描述
可以看到,QTabWidget的标题栏,通过min-height和font-size可以调整标题栏高度和字体大小,

QTabBar::tab {
        border-bottom-left-radius:0px;
        border-bottom-right-radius:0px;
        color: #F0F0F0;
        min-width: 60px;
        min-height: 20px;
        /*font-size: 12px;
        border: 2px solid #C4C4C3;
        border-bottom-color: #C2C7CB;
        padding: 2px;*/
        padding: 3px 8px 3px 8px;
        margin:1px;
        background: qlineargradient(spread:pad, x1:0, y1:0, x2:0, y2:1, stop:0 #636363, stop:1 #575757);
}

下面代码可以改变图标大小,

pTabConfigPanel->setIconSize(QSize(32, 32));

理论上也是可以用qss实现的,因为iconSize是他的一个属性,不行的原因找到了,因为用的控件是QTabWidget,QTabWidget也有一个iconSize属性,应该是这个会覆盖QTabBar的iconSize属性,所以对QTabBar设置属性是没用的。关于QSS设置属性方法参考博客Qt 之 QSS(Q_PROPERTY-原始属性)

QTabWidget {
    qproperty-iconSize: 32px 32px;
}

QTabBar::tab {
        /*qproperty-drawBase: 0;*/
        border-bottom-left-radius:0px;
        border-bottom-right-radius:0px;
        color: #F0F0F0;
        min-width: 60px;
        min-height: 20px;
        /*font-size: 12px;
        border: 2px solid #C4C4C3;
        border-bottom-color: #C2C7CB;
        padding: 2px;*/
        padding: 3px 8px 3px 8px;
        margin:1px;
        /*qproperty-iconSize: 32px 32px;*/
        background: qlineargradient(spread:pad, x1:0, y1:0, x2:0, y2:1, stop:0 #636363, stop:1 #575757);
}

现在的长相还是不错的,
这里写图片描述
本文在学习博客Qt浅谈之三十五仿QQ设置面板功能遇到,博主的界面长这样,
这里写图片描述
他的QTabBar的图标是很大的,但是他的默认就可以,我这里必须要代码或者QSS来实现,记录一下。

评论 1
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包

打赏作者

三遍猪

你的鼓励将是我创作的最大动力

¥1 ¥2 ¥4 ¥6 ¥10 ¥20
扫码支付:¥1
获取中
扫码支付

您的余额不足,请更换扫码支付或充值

打赏作者

实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

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

余额充值