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);
相关推荐
wangchen_03 分钟前
C/C++时间操作(ctime、chrono)
开发语言·c++
Dev7z14 分钟前
基于MATLAB HSI颜色空间的图像美颜系统设计与实现
开发语言·matlab
superman超哥16 分钟前
仓颉语言中字符串常用方法的深度剖析与工程实践
开发语言·后端·python·c#·仓颉
想学后端的前端工程师31 分钟前
【Spring Boot微服务开发实战:从入门到企业级应用】
java·开发语言·python
刺客-Andy37 分钟前
js高频面试题 50道及答案
开发语言·javascript·ecmascript
夏幻灵43 分钟前
指针在 C++ 中最核心、最实用的两个作用:“避免大数据的复制” 和 “共享”。
开发语言·c++
ghie90901 小时前
MATLAB 高速公路裂缝检测
开发语言·matlab
Yyyyy123jsjs1 小时前
Python 如何做量化交易?从行情获取开始
开发语言·python
violet-lz1 小时前
C++ 内存分区详解
开发语言·jvm·c++
周小码1 小时前
Spacedrive:用Rust构建的虚拟分布式文件系统
开发语言·后端·rust