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);
相关推荐
-小麦子-10 小时前
Python 里的 range 是干嘛的?
开发语言·python
lly20240610 小时前
CSS 图像拼合技术
开发语言
承渊政道10 小时前
C++学习之旅【C++继承概念指南与核心内容介绍】
c语言·开发语言·c++·笔记·学习·visual studio
天空属于哈夫克311 小时前
Go 开发:企微外部群主动发送消息
开发语言·golang·企业微信
不绝19111 小时前
延迟函数/协同程序
java·开发语言
魔力军11 小时前
Rust学习Day5:结构体介绍和使用
开发语言·学习·rust
maplewen.11 小时前
C++ 内存对齐
开发语言·c++
老毛肚11 小时前
java juc 01 进程与线程
java·开发语言
1candobetter11 小时前
JAVA后端开发——反射机制在Spring业务开发中的实际应用
java·开发语言·spring
野犬寒鸦11 小时前
WebSocket协同编辑:高性能Disruptor架构揭秘及项目中的实战应用
java·开发语言·数据库·redis·后端