2017-11-26 46 views
0

Qt Designer에서 탭을 뒤집을 것입니다.Qt 생성자의 반전 탭 QTabWidget?

나는 QTabWidget 표준에서 탭을 변경 찾고있다 :

/- TAB1 - \/- TAB2 - \ ________________

에 \ - tab1 -/\ - tab2 -/***********************

이 탭은 콘텐츠가 아닌 콘텐츠로 이동합니다. 그것의.

내가 할 수있는 간단한 방법이 있습니까? 어쩌면 Qtabwidget을 설정하거나 CSS를 편집하여 어떤 일이 일어날 수 있습니까? 당신이 paintEvent() 메소드를 자신의 QTabBar를 만들고 덮어 쓰기한다 무엇을해야 그 작업이 QSS와 함께 할 수 없습니다

감사

+0

내 솔루션이 효과가 있었습니까? – eyllanesc

답변

1

는 또 다른 문제는 setTabBar 방법을 사용거야 그래서 개인 있다는 것이다 당신은 Qt는 디자이너 내에서 클래스를 사용하려는 경우, QTabWidget에서 상속하는 클래스를 만들 필요가 당신은 그것을 촉진해야합니다

#ifndef TABWIDGET_H 
#define TABWIDGET_H 

#include <QStyleOptionTab> 
#include <QStylePainter> 
#include <QTabWidget> 

class TabBar: public QTabBar 
{ 
protected: 
    void paintEvent(QPaintEvent */*event*/){ 

     QStylePainter painter(this); 
     QStyleOptionTab opt; 

     for(int i = 0;i < count();i++) 
     { 
      initStyleOption(&opt,i); 

      QPoint c = tabRect(i).center(); 
      painter.translate(c); 
      painter.rotate(-180); 
      painter.translate(-c); 
      painter.drawControl(QStyle::CE_TabBarTabShape, opt); 
      painter.resetTransform(); 

      painter.drawControl(QStyle::CE_TabBarTabLabel,opt); 
     } 
    } 
}; 

class TabWidget : public QTabWidget 
{ 
public: 
    TabWidget(QWidget *parent=0):QTabWidget(parent){ 
     setTabBar(new TabBar); 
     setTabShape(QTabWidget::Triangular); 
    } 
}; 

#endif // TABWIDGET_H 

완전한 예는 다음 link에서 찾을 수 있습니다.

enter image description here