QTabWidget的tabposition为west时,改变tab文字方向为从上到下

来源:互联网 发布:编程学习网 编辑:程序博客网 时间:2024/06/08 00:26

QTabWidget在tabPosition设置为west时,tab的文字方向默认为从下到上


要将tab的文字方向设置为从上到下,参照如下:

class MyProxyStyle : public QProxyStyle{Q_OBJECTpublic:MyProxyStyle(QStyle *parent=0);~MyProxyStyle();void drawControl(ControlElement element, const QStyleOption *option, QPainter *painter, const QWidget *widget) const;private:};
MyProxyStyle::MyProxyStyle(QStyle *parent)<span style="white-space:pre"></span>: QProxyStyle(parent){}MyProxyStyle::~MyProxyStyle(){}void MyProxyStyle::drawControl(ControlElement element, const QStyleOption *option, QPainter *painter, const QWidget *widget) const{<span style="white-space:pre"></span>if (element == CE_TabBarTabLabel)<span style="white-space:pre"></span>{<span style="white-space:pre"></span>if (const QStyleOptionTab *tab = qstyleoption_cast<const QStyleOptionTab *>(option))<span style="white-space:pre"></span>{<span style="white-space:pre"></span>QStyleOptionTab opt(*tab);<span style="white-space:pre"></span>opt.shape = QTabBar::RoundedEast;<span style="white-space:pre"></span>QProxyStyle::drawControl(element, &opt, painter, widget);<span style="white-space:pre"></span>return;<span style="white-space:pre"></span>}<span style="white-space:pre"></span>}<span style="white-space:pre"></span>QProxyStyle::drawControl(element, option, painter, widget);}
ITTabWidget::ITTabWidget(QWidget *parent)<span style="white-space:pre"></span>: QTabWidget(parent){<span style="white-space:pre"></span>QWidget* tempwidget1 = new QWidget();<span style="white-space:pre"></span>QWidget* tempwidget2 = new QWidget();<span style="white-space:pre"></span>addTab(tempwidget1,"123456");<span style="white-space:pre"></span>addTab(tempwidget2,"abcdef");<span style="white-space:pre"></span><span style="white-space:pre"></span>tabBar()->setStyle(new MyProxyStyle());}




0 0
原创粉丝点击