我有一组五个按钮,我试图在qss文件中定位。我在ui文件中设置的默认位置适用于我需要的布局之一。不过,我想在另一个主题中对按钮进行分组。在QT中通过qss定位QPushButtons
我是新来的qss文件,一直在试验,但无法弄清楚是否有可能。这里定义了“left”属性:http://doc.qt.io/archives/4.6/stylesheet.html#left-attr但是当我尝试使用它时没有任何反应。
margin-left实际上移动按钮,但只是关系。因此,如果按钮位于ui文件中,且它们之间的间隔为100,则列表中第二个按钮的空白左边偏移100.
我在做什么错?它可能是在ui文件中的一些设置阻止它移动?我已经“打破布局”,这似乎并不重要。你有建议吗?
这是我的qss文件的示例。左边没有效果。
QPushButton#Button_1
{
min-width: 50;
max-width: 50;
min-height: 50;
max-height: 50;
position:absolute;
subcontrol-origin: border;
left:200;
}
编辑: 我已经想通了,我可以通过派生从QPushButton类,使一个“GeomX” qproperty改变按钮的位置。这似乎有效,但我现在遇到了一个奇怪的问题。当我第一次加载我的应用程序时,它会在ui文件中定位时绘制按钮。当我使用编码过的“更改主题”选项并选择当前加载的主题时,它会按照我的预期移动按钮。但是,调整应用程序的大小会将它们转移回UI位置,并重新启动也会将它们放回UI位置。 ui文件中是否有一个设置可以修改,以便让它停止移动它们?是否有我需要解决的加载顺序问题?甚至可以解决这个问题吗?到底是怎么回事?