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);
相关推荐
geovindu3 分钟前
java: Memento Pattern
java·开发语言·后端·备忘录模式·行为模式
曾阿伦11 分钟前
Trae CN Python环境调试debug指南
开发语言·python
PPPPickup16 分钟前
基础知识差缺补漏-面试版持续更新
java·开发语言
兔兔兔兔140 分钟前
记录C++ 3
开发语言·c++
黄鸭部落格ShiYuYuanFang42 分钟前
【分享】软考每日一练与解析-计组 8/12
java·开发语言
m0_6174939444 分钟前
Python 使用 cryptography 实现数据加密与解密
开发语言·python
大白同学4211 小时前
初始Qt——了解Qt背景
开发语言·qt
GoKu~1 小时前
Qt图形渲染相关例子
qt
万山寒1 小时前
python依赖包导出离线安装到没有外网的服务器
服务器·开发语言·python
特立独行的猫a2 小时前
我用 Rust + Tauri 2 复刻了 N_m3u8DL-CLI:一个 m3u8 多线程下载器
开发语言·后端·rust·m3u8·视频下载器·m3u8dl-cli