#python #qlistwidget #pyside2
#python #qlistwidget #pyside2
Вопрос:
Я использую PySide. У меня есть QListWidget, который я заполняю элементами значков. Значки отображаются слева направо по умолчанию, и я бы хотел, чтобы они отображались сверху вниз или имели вертикальный макет, а не горизонтальный. Как я могу этого добиться?
к этому:
Ответ №1:
Вы должны установить 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_())
Комментарии:
1. с одной стороны, что, если бы я хотел, чтобы метка для значка отображалась справа от значка, а не под ним? Например, «kroger» будет отображаться справа от значка, а не под ним.
2. @winteralfs Возможно, делегат поможет реализовать эту функцию