0

我正在使用 PySide 构建一个 GUI

我有一个 QBoxLayout,我添加了一些小部件,问题是我想控制我无法做到的位置,我尝试了文档页面中提供的内容

addWidget( widg, int streatch, int alignment)

但这并没有给我想要的东西,所以我想要的最终外观是这样的


-------------------------------------------------- ---------- ^^ ** &&&&&&

如果线_ ___代表整个窗口/布局,我希望我wid在代码中命名的小部件就像虚线 -------- 并且滑块与 ^^ ​​位于同一位置,最后要在 &&&&& 中的按钮

我的第二个问题是我想为滑块和组合框添加一些标签,我想确定位置我该怎么做

这是我的代码

    self.wid = GLWidget()

    mainLayout = QtGui.QHBoxLayout()
    mainLayout.addWidget(self.wid)



    self.xSlider = self.createSlider()
    self.ySlider = self.createSlider()

    mainLayout.addWidget(self.xSlider)
    mainLayout.addWidget(self.ySlider)

    self.btn = QtGui.QPushButton('OK')
    self.btn.resize(self.btn.sizeHint())

    mainLayout.addWidget(self.btn)


    self.combo = QtGui.QComboBox()

    mainLayout.addWidget(self.combo)

    self.setLayout(mainLayout)
    self.setWindowTitle(self.tr("Hello GL"))
    self.setGeometry(350, 350, 1000, 1000)
4

1 回答 1

1

您可以使用 QGridLayout 而不是 QHBoxLayout 并使用 QGridLayout 的setColumnMinimumWidth方法来指定所需的小部件宽度。就像这样:

mainLayout = QtGui.QGridLayout()
mainLayout.setColumnMinimumWidth(0, 100) #set column 0 width to 100 pixels
button = QtGui.QPushButton('OK')
mainLayout.addWidget(button, 0, 0) #adds the button to the widened column

然后继续添加其余的小部件。

于 2013-03-19T12:56:11.590 回答