I'd like to insert a space to separate the second tab from the third. Is this possible? I've tried some stylesheets but as this widget is kind of new to me I've had no success so far.
Yes, it's possible, but not so obvious. Here's one way I came up with some time ago.
Whenever you need a space between two tabs, insert a new tab between the tabs and make the new tab disabled by calling QTabWidget::setTabEnabled(int index, bool enable)
. This way the new tab will no longer be possible to interact with (unless the tab is the only one present). You will also need to set the following style sheet on your QTabWidget
:
QTabBar::tab:disabled {
width: 100px;
color: transparent;
background: transparent;
}
This style sheet makes the new tab invisible (actually it makes all disabled tabs invisible, so unless that's OK, this method will not work for you). You may adjust the width of the space by changing the value for width
in the style sheet.
The result:
If you don't want to create an invisible tab as in the accepted answer, here's a way to do it using only style sheets. Similarly, adjust the pixel amount for more or less spacing between tabs.
QTabBar::tab {
margin-left:2px;
margin-right:2px;
}
QTabBar::tab {
margin-left:40px;
margin-right:40px;
}
If you love us? You can donate to us via Paypal or buy me a coffee so we can maintain and grow! Thank you!
Donate Us With