2012-12-11 39 views
0

我试图通过使显示为斜体我发现的唯一方法是使用setTabButton,并给它一个自定义窗口小部件,这是自定义的Qt/C一QTabBar按钮++一个QLabel在我的情况。但是,setTabButton的位置参数只有Left或Right作为选项(请参阅下面的代码)。现在看起来很奇怪,旁边的其他标签都是居中。QTabBar :: setTabButton中心按钮

tab_bar->setTabButton(index, QTabBar::RightSide,((QWidget*)(tab_label))); 

请注意,有一个样式表应用于整个应用程序...不知道是否会导致问题更明显。

样式所对应的标签是:

QLabel#GrainButton { 
    background-color: transparent; 
    border: 0px solid transparent; 
    margin: 0px; 
    padding: 0px; 
    min-width: 20px; 
    border: 0px solid transparent; 
    border-radius: 0px; 
} 

的如何中心这个有什么想法?

回答

0

您可以创建自定义窗口小部件,而不是你的QLabel的。在这个小部件中,您可以使用2个占位符小部件来设置QHBoxLayout。

QHBoxLayout: 
    PlaceHolder(sizePolicy(QSizePolicy::Expanding, QSizePolicy::Fixed);) 
    YourLabel 
    PlaceHolder(sizePolicy(QSizePolicy::Expanding, QSizePolicy::Fixed);) 

这可能会将您的小部件放在中心。

+0

可悲的是,我仍然只能地方自定义部件上的标签的左侧或右侧... –