背景:
在利用QToolBox实现一个简单的抽屉控件 / 导航控件时,发现QToolBox::tab的标题总是居左。尝试使用text-align属性、subcontrol-xxx属性都不起作用。
解决办法:
利用padding属性进行"硬编码"。
代码片段如下:
1 //当前窗口的宽度,其中
2 // TOOLBOXWND_WIDTH: 控件宽度
3 // 14 : 我的控件的Border和弧度宽度
4 // fontMetrics().width("项目") : 标题为“项目”时的宽度
5 int padding = (TOOLBOXWND_WIDTH - 14 - fontMetrics().width("项目"))/2;
6 setStyleSheet(QString("QToolBox::tab {padding-left: %1px;}").arg(padding));