Как сделать так, чтобы элементы значков в моем QlistWidget вставлялись в виджет или отображались сверху вниз, а не слева направо? - PullRequest
2 голосов
/ 08 апреля 2019

Я использую PySide.У меня есть QlistWidget, который я заполняю элементами значков.Значки отображаются слева направо по умолчанию, и я хотел бы, чтобы они отображались сверху вниз или иметь вертикальную компоновку, а не горизонтальную.Как мне этого добиться?

из этого: enter image description here

до этого:

enter image description here

1 Ответ

2 голосов
/ 08 апреля 2019

Необходимо установить для свойства flow значение QListView::TopToBottom:

from PySide2 import QtCore, QtGui, QtWidgets


if __name__ == "__main__":
    import sys

    app = QtWidgets.QApplication(sys.argv)
    w = QtWidgets.QListWidget()
    w.setViewMode(QtWidgets.QListView.IconMode)
    w.setIconSize(QtCore.QSize(128, 128))
    w.setResizeMode(QtWidgets.QListView.Adjust)
    w.setFlow(QtWidgets.QListView.TopToBottom)
    for path in ("icon1.png", "icon2.png"):
        it = QtWidgets.QListWidgetItem()
        it.setIcon(QtGui.QIcon(path))
        w.addItem(it)
    w.resize(640, 480)
    w.show()
    sys.exit(app.exec_())

enter image description here

...