Qt调整QTabBar图标和文字的间距

原生的QTabBar放上图标和文字,固定QTab的宽度时,间距较大。通过自定义样式,轻松解决间距问题

cpp 复制代码
#include <QProxyStyle>

class MyTabStyle : public QProxyStyle
{
    Q_OBJECT
public:
    explicit MyTabStyle (QStyle *style = nullptr) : QProxyStyle(style)
    {
    }

    virtual void drawItemText(QPainter *painter, const QRect &rect,
                              int flags, const QPalette &pal, bool enabled,
                              const QString &text,
                              QPalette::ColorRole textRole) const Q_DECL_OVERRIDE
    {
        QStyle::drawItemText(painter, rect, Qt::AlignLeft | Qt::AlignVCenter,
                             pal, enabled, text, textRole);
    }
};

应用示例:

cpp 复制代码
ui->tabWidget->tabBar()->setStyle(new MyTabBar);
相关推荐
@大迁世界2 分钟前
Promise.all 与 Promise.allSettled:一次取数的小差别,救了我的接口
开发语言·前端·javascript·ecmascript
情深不寿31714 分钟前
C++特殊类的设计
开发语言·c++·单例模式
流星白龙26 分钟前
【Qt】3.认识 Qt Creator 界面
java·开发语言·qt
机灵猫35 分钟前
深入理解 Java 类加载与垃圾回收机制:从原理到实践
java·开发语言
weixin_3077791336 分钟前
AWS Redshift 数据仓库完整配置与自动化管理指南
开发语言·数据仓库·python·云计算·aws
伐尘1 小时前
【Qt】QTableWidget 自定义排序功能实现
开发语言·qt
ajassi20001 小时前
开源 C++ QT QML 开发(十九)多媒体--音频录制
c++·qt·开源
多多*1 小时前
上传文件相关业务,采用策略模式+模版方法模式进行动态解耦
java·开发语言
赴前尘2 小时前
Go 通道非阻塞发送:优雅地处理“通道已满”的场景
开发语言·后端·golang