PDA

View Full Version : Set style of QTabWidget created by QDockWindows



FelixB
8th June 2011, 15:37
Hi,

Is there any way to change the style of QTabWidgets of tabbed QDockWidgets by using a stylesheet?

I tried the following snippet from an official example. I expected the tabs to appear centered, but they remained on the left side. The tabs changed their appearance, so the QTabBar properties are applied - but it seems I can't change the QTabWidget.

Note: I show the tabs above the widgets (setTabPosition(Qt::AllDockWidgetAreas, QTabWidget::North);), but that should not make any difference.

thanks in advance...
Felix


QTabWidget::pane { /* The tab widget frame */
border-top: 2px solid #C2C7CB;
position: absolute;
top: -0.5em;
}

QTabWidget::tab-bar {
alignment: center;
}

/* Style the tab using the tab sub-control. Note that
it reads QTabBar _not_ QTabWidget */
QTabBar::tab {
background: qlineargradient(x1: 0, y1: 0, x2: 0, y2: 1,
stop: 0 #E1E1E1, stop: 0.4 #DDDDDD,
stop: 0.5 #D8D8D8, stop: 1.0 #D3D3D3);
border: 2px solid #C4C4C3;
border-bottom-color: #C2C7CB; /* same as the pane color */
border-top-left-radius: 4px;
border-top-right-radius: 4px;
min-width: 8ex;
padding: 2px;
}

QTabBar::tab:selected, QTabBar::tab:hover {
background: qlineargradient(x1: 0, y1: 0, x2: 0, y2: 1,
stop: 0 #fafafa, stop: 0.4 #f4f4f4,
stop: 0.5 #e7e7e7, stop: 1.0 #fafafa);
}

QTabBar::tab:selected {
border-color: #9B9B9B;
border-bottom-color: #C2C7CB; /* same as pane color */
}