0
我試圖設計樣式化QTabWidget以修改選項卡的外觀,並在底部添加藍色邊框。樣式化QTabWidget,只在選項卡窗口小部件上添加底部邊框*不起作用
當我爲QWidget
設置border-bottom
樣式時,每個窗口小部件都會出現一個藍色邊框 - 包括我想要的一個,QTabWidget
,但也包括其他所有窗口小部件,我不想這樣做。看到這個截圖:
這似乎是有前途的,因爲它似乎一切我需要做的是設置bottom-border
爲QTabWidget
,而不是QWidget
爲一體。但是,這並不工作,因爲這截圖顯示:
這裏是我的完整樣式 - 它的Qt Designer中設置的QTabWidget
:
QTabWidget {
border-bottom: 3px solid #3233ff;
}
QTabBar::tab:selected {
border-left: 1px solid #1c1515;
padding-left: 10px;
border-right: 1px solid #1c1515;
padding-right: 10px;
border-bottom: 1px solid #1c1515;
border-top: 1px solid #a0a0a0;
background: qlineargradient(x1: 0, y1: 0, x2: 0, y2: 1,
stop: 0 #ededed, stop: 0.7 #9898ff,
stop: 0.9 #7e7fff, stop: 1.0 #3233ff);
}
QTabBar::tab:!selected {
border-left: 1px solid #1c1515;
padding-left: 10px;
border-right: 1px solid #1c1515;
padding-right: 10px;
border-bottom: 1px solid #1c1515;
border-top: 1px solid #a0a0a0;
margin-bottom: 2px;
background: qlineargradient(x1: 0, y1: 0, x2: 0, y2: 1,
stop: 0 #e0e0e0, stop: 0.4 #dbdbdb,
stop: 0.5 #d3d3d3, stop: 1.0 #cfcfcf);
}
我必須做的就是藍色底部邊框出現 - 但僅限於QTabWidget?
我嘗試過各種可能性,使用'QTabWidget :: pane',而且可悲的是,他們都沒有預期的效果。關於StackOverflow和/或其他地方的其他問題表明,更好的方法是使用'QWidget'選擇器(然後在子窗口小部件中覆蓋);如截圖所示,這種方法看起來很有前途。儘管如此,在此期間,我通過繼承'QTabWidget',將QTabWidget提升爲這個子類,並且在其子QTabBar實例上調用'setDrawBase(false)'來解決這個問題。 – 2013-04-28 21:28:23
我不能再多說那裏了:http://doc.qt.digia.com/4.7/stylesheet-examples.html#customizing-qtabwidget-and-qtabbar – 2013-04-29 09:01:38
我在那個鏈接(和其他人的例子中玩過)廣泛發佈我的問題之前。 – 2013-04-30 09:38:34