QTabbar Missed Style
-
Hi everyone,
I want to rotate the tab with its background.
The frame and text rotated but its background hasn't.
-
Which styleoptiontab should be modified ?
I've modified the styles. As I try to use setStyleSheet():tabWidget->setStyleSheet("QTabBar::tab:selected { background: rgba(28,28,29) ; background-origin: content; font-size: 14px; font-family: 'Times New Roman' ; height: 120px; width: 30px; }");
I think, it applies to the base style instead of modified one.
-
@CodeFreaks said in QTabbar Missed Style:
QTabBar::tab:selected,
Hi, the comma "," seems odd ?
also that style is for the seelected tab ?
Is that the background u mean ? -
@mrjj
Thanks for reply.
the stylesheet statement is right (additional comma inserted when I copied the statement here).
I've edited the styleoptiontab to rotate the tabs. Shape and text rotated well.
When I applied the stylesheet to the selected tab the result was as presented in first post (Test1 is selected - the dark part is its background color applied by setStyleSheet syntax). -
Can you show use the complete code used for your test?
-
@Christian-Ehrlicher
@mrjj
Thanks for reply.
Of course :int main(int argc, char *argv[]) { QApplication app(argc, argv); QTabWidget *tabWidget = new QTabWidget(); tabWidget->setTabPosition(QTabWidget::West); tabWidget->tabBar()->setStyle(new CustomTabStyle); tabWidget->setStyleSheet("QTabBar::tab:selected { background: rgba(28,28,29) ; font-size: 14px; font-family: 'Times New Roman' ; height: 120px; width: 30px; }"); QWidget* tab_content1 = new QWidget(); QWidget* tab_content2 = new QWidget(); QWidget* tab_content3 = new QWidget(); QWidget* tab_content4 = new QWidget(); QWidget* tab_content5 = new QWidget(); QWidget* tab_content6 = new QWidget(); QWidget* tab_content7 = new QWidget(); tabWidget->addTab(tab_content1, "Test1" ); tabWidget->addTab(tab_content2, "Test2" ); tabWidget->addTab(tab_content3, "Test3" ); tabWidget->addTab(tab_content4, "Test4" ); tabWidget->addTab(tab_content5, "Test5" ); tabWidget->addTab(tab_content6, "Test6" ); tabWidget->addTab(tab_content7, "Test7" ); tabWidget->setMinimumSize(400,400); tabWidget->show(); return app.exec(); }
-
Can't anyone help me ?
-
@CodeFreaks
Hi. i did try your code but could not spot why style would draw in
old orientation.
I will have a look again this evening. -
@CodeFreaks
Hi
On second try i realized the odd rectangle came from stylesheet
tabWidget->setStyleSheet("QTabBar::tab:selected { background: rgba(28,28,29) ; font-size: 14px; font-family: 'Times New Roman' ; height: 120px; width: 30px; }");the last height and width is what makes it look wrong.
If you remove them it colors the area correctly.
tabWidget->setStyleSheet("QTabBar::tab:selected { color:white; background: rgba(28,28,29) ; font-size: 14px; font-family: 'Times New Roman'; }"); -
@CodeFreaks
Hi can you show how your style sheet looks with borders?
Often is sheet is ignored its due to errors.Since you already have a Delegate we could just draw some border :)
Maybe its CE_TabBarTabShape that should have it. not looked into it.I assume you try to have teh current tab have a border ?
-
@mrjj
Thanks for reply.
Widget with borders definition in stylesheet statement:
I applied the borders to all tabs.
tabWidget->setStyleSheet("QTabBar::tab { font-size: 14px; font-family: \"Times New Roman\" ;" " border-width: 1px;" " border-style: solid;" " border-color: black; }"
-
Hi
well good news is that it does support it
update:
Ok, when there is delegate it NOT drawn.
wrong :) I was stupid :)
it does work with delegate -
using stylesheet
tabWidget->setStyleSheet(QLatin1String("QTabBar::tab { \n" " border-width: 1px;\n" " border-style: solid;\n" " border-color: blue;\n" "}\n" "\n" "QTabBar::tab:selected { \n" "color:white; \n" "background: rgba(28,28,29) ; \n" "font-size: 14px; font-family: Times New Roman\n" "}"));
-
@CodeFreaks said in QTabbar Missed Style:
it missed the custom style:
Im not sure what you refer to here ?
update: ah sorry. tired.
You mean it no longer flips the tabs.