Qt QTabWidget 改变tabBar位置 并改变文字方向


起因

????QTabWidget默认的tabBar在最上端。

改进

????但有时需要将tabBar放置在左侧,但是设置后效果如下…

最终

????有时候需要如下效果,则需要自定义style:

附相应代码(具体边框可通过stylesheet进行设置)

1 #include "mainwindoh" 2 #include "ui_mainwindoh" 3 4 #include <QPainter> 5 #include <QProxyStyle> 6 7 class CustTabStyle : public QProxyStyle 8 19 return s; 20 } 21 22 void drawControl(ControlElement element, const QStyleOption *option, QPainter *painter, const QWidget *widget) const 23 35 QTextOption option; 36 option.setAlignment(Qt::AlignCenter); 37 if (tab>state & QStyle::State_Selected) 40 else 43 44 painter>drawText(allRect, tab>text, option); 45 return; 46 } 47 } 48 49 if (element == CE_TabBarTab) 52 } 53 }; 54 55 MainWindow::MainWindow(QWidget *parent) : 56 QMainWindow(parent), 57 ui(new Ui::MainWindow) 58 "); 67 #endif 68 } 69 70 MainWindow::~MainWindow() 71



上一篇:Qt 设置tabWidget选项卡靠右上

下一篇:Qt QTabWidget 竖向 QTabBar横向


Qt
Copyright © 2002-2019 k262电脑网 www.k262.cn 皖ICP备2020016292号
温馨提示:部分文章图片数据来源与网络,仅供参考!版权归原作者所有,如有侵权请联系删除!QQ:251442993 热门搜索 网站地图