В QTableWidget я могу настроить размер строк для изменения размера пользователем во время выполнения, установив verticalHeader
«s resizeMode
в Interactive
как это:
table.verticalHeader().setResizeMode(QtGui.QHeaderView.Interactive)
Как бы я настроить подобное поведение для QListWidget
? К сожалению QListWidget
resizeMode
не имеет Interactive
предмет, и я не нашел ничего подобного.
Лучше всего настроить его для всего списка, но когда это возможно для отдельных строк / элементов, это тоже подойдет.
Как доктор сказал:
Этот вид не отображает горизонтальные или вертикальные заголовки; для отображения
список элементов с горизонтальным заголовком, используйте вместо него QTreeView.
Так что вы должны использовать QTreeView
(или же QTreeWidget
) с одним столбцом и, возможно, с определенным стилем.
Другой подход. Там нет заголовка, поэтому вы можете предоставить какой-то инструмент (диалоговое окно, слайдер или что-то еще), где пользователь сможет изменять высоту строки, чтобы изменить высоту строки, вы должны просто использовать setData()
и установить QSize()
в Qt::SizeHintRole
, Например:
ui->listWidget->model()->setData(ui->listWidget->currentIndex(),
QSize(40,40),Qt::SizeHintRole);