Как сделать виджеты, имеют одинаковую ширину и выровнять их влево, чтобы создать оставшееся пространство в сетке?Python

Программы на Python
Ответить Пред. темаСлед. тема
Anonymous
 Как сделать виджеты, имеют одинаковую ширину и выровнять их влево, чтобы создать оставшееся пространство в сетке?

Сообщение Anonymous »

В макете сетки с двумя столбцами я хочу, чтобы все столбцы имели такую ​​же ширину, как и их самая широкая ширина, но не занимали все оставшиеся места. Кто -нибудь знает причину или решение?from PySide6.QtWidgets import (
QApplication, QWidget, QGridLayout, QLabel, QSizePolicy, QSpacerItem, QSizePolicy
)
from PySide6.QtCore import Qt

class LeftAlignedGrid(QWidget):
def __init__(self):
super().__init__()

self.children_text = [
"Lorem ipsum dolor sit amet consectetur",
"short1",
"short2",
"short3",
"Lorem ipsum dolor sit",
"short4"
]

grid_layout = QGridLayout()
grid_layout.setSpacing(10)

# add widgets
for i in range(3):
for j in range(2):
label = QLabel(self.children_text[i * 2 + j])
label.setStyleSheet("background-color: lightblue; border: 1px solid black;")
label.setAlignment(Qt.AlignCenter)
label.setSizePolicy(QSizePolicy.Policy.Expanding, QSizePolicy.Expanding)
grid_layout.addWidget(label, i, j)

grid_layout.addItem(QSpacerItem(0, 0, QSizePolicy.Expanding, QSizePolicy.Minimum), 0, 2)
grid_layout.addItem(QSpacerItem(0, 0, QSizePolicy.Expanding, QSizePolicy.Minimum), 1, 2)

self.setLayout(grid_layout)
self.setWindowTitle("Left-Aligned Inline Grid")
self.resize(600, 400)

if __name__ == "__main__":
app = QApplication([])

window = LeftAlignedGrid()
window.show()

app.exec()


Подробнее здесь: https://stackoverflow.com/questions/793 ... o-create-t
Реклама
Ответить Пред. темаСлед. тема

Быстрый ответ

Изменение регистра текста: 
Смайлики
:) :( :oops: :roll: :wink: :muza: :clever: :sorry: :angel: :read: *x)
Ещё смайлики…
   
К этому ответу прикреплено по крайней мере одно вложение.

Если вы не хотите добавлять вложения, оставьте поля пустыми.

Максимально разрешённый размер вложения: 15 МБ.

  • Похожие темы
    Ответы
    Просмотры
    Последнее сообщение

Вернуться в «Python»