gpt4 book ai didi

python - QGridLayout,展开widget就行

转载 作者:太空宇宙 更新时间:2023-11-03 18:50:34 26 4
gpt4 key购买 nike

我有一个 QGridLayout 来处理我的小部件。事实上,它们留在我放置的列中,而没有扩展整个宽度。是否有任何选项可以告诉行完全展开?目标是模仿 QHBoxLayout 的行为,但不使用 QHBoxLayout。

示例:

self.label_player = QtGui.QLabel("Chemin du lecteur :")
self.line_path = QtGui.QLineEdit()
self.button_select_player = QtGui.QPushButton("Sélectionner")

...Some code

self.grid_settings.addWidget(self.label_player, 3, 0, 2, 1)
self.grid_settings.addWidget(self.line_path, 3, 1, 1, 1)
self.grid_settings.addWidget(self.button_select_player, 3, 2, 1, 1)

编辑:

这是我想要的图像,我在 QGridLayout 中使用 QHBoxLayout 获得了结果,红色线(我尝试不做):

/image/8Nced.png

这是 QGridLayout 的默认行为。这就是我目前拥有的:

/image/rDlkK.png

最佳答案

import sys
from PySide import QtGui, QtCore

class Window(QtGui.QWidget):
def __init__(self):
super(Window, self).__init__()
self.grid = QtGui.QGridLayout()
big_one = QtGui.QPushButton('Big one')
big_one.setSizePolicy(QtGui.QSizePolicy.Expanding, QtGui.QSizePolicy.Expanding)
self.grid.addWidget(big_one, 0, 0, 2, 2)
self.grid.addWidget(QtGui.QPushButton('Ajouter'), 0, 2, 1, 1)
self.grid.addWidget(QtGui.QPushButton('Enlever'), 1, 2, 1, 1)
self.grid.addWidget(QtGui.QLabel("Chemin du lecteur :"), 2, 0, 1, 1)
self.grid.addWidget(QtGui.QLineEdit(), 2, 1, 1, 1)
self.grid.addWidget(QtGui.QPushButton("Selectionner"), 2, 2, 1, 1)
self.grid.addWidget(QtGui.QCheckBox("Some long text in french"), 3, 0, 1, 3)
self.grid.addWidget(QtGui.QCheckBox("An even longer text in french than the first one"), 4, 0, 1, 3)
self.grid.addWidget(QtGui.QLabel("Something, something, something"), 5, 0, 1, 2)
self.grid.addWidget(QtGui.QSpinBox(), 5, 2, 1, 1)
self.setLayout(self.grid)

app = QtGui.QApplication(sys.argv)
w = Window()
w.show()
sys.exit(app.exec_())

关于python - QGridLayout,展开widget就行,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/18443419/

26 4 0
Copyright 2021 - 2024 cfsdn All Rights Reserved 蜀ICP备2022000587号
广告合作:1813099741@qq.com 6ren.com