在我的项目中有一个带有 5 个选项卡的 QTabWidget,使用 styleSheet 我改变了整个小部件的样式,但是一些选项卡对于其中的文本变小了。如何为某些选项卡设置单独的宽度?
如您所见,前 3 个选项卡的宽度正常,但后 2 个对于其中的文本来说太小了。 样式表:
QTabWidget::pane
{
background-color: rgb(212, 234, 255);
border: 1px solid; /*граница*/
border-color: rgb(255, 255, 255);
}
QTabWidget::tab-bar
{
left: 10px; /*перемещение кнопок вкладок*/
width: 650px;
}
QTabBar::tab
{
font: 75 11pt "MS Shell Dlg 2";
font-weight: bold;
background-color: qlineargradient(spread:pad, x1:0.502, y1:1, x2:0.493, y2:0,
stop:0 rgba(53, 92, 88, 255),
stop:1 rgba(45, 143, 132, 255));
border-top-left-radius: 4px;
border-top-right-radius: 4px;
min-width: 5px;
padding: 6px;
border: 1px solid;
border-color: rgb(255, 255, 255);
}
QTabBar::tab:selected,
QTabBar::tab:hover
{
background-color: rgb(63, 171, 160);
}
QTabBar::tab:!selected
{
margin-top: 5px
}
QTabBar::tab:selected
{
margin-left: 4px;
margin-right: 4px;
background-color: qlineargradient(spread:pad, x1:0.502, y1:1, x2:0.493, y2:0,
stop:0 rgba(53, 92, 88, 255),
stop:1 rgb(58, 207, 192));
}
补充资料: 我不会更改 UI 的 .ui 或 .py 文件; 为了创建 UI,我使用 QtDesigner; 所有逻辑代码都在单独的文件中,我在其中导入 UI 文件。
将 QTabWidget 的大小策略设置为“首选”,以使其扩展以适合其内容:
myTabWidget.setSizePolicy(QSizePolicy::Preferred, QSizePolicy::Preferred);
在QTabWidget中添加如下样式表:
QTabWidget::tab-bar {
width: fit-content;
}