How to insert a space between two tabs in a QTabWidget?
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;
}
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: