Здравствуйте. Как сделать так, чтобы основной виджет автоматически расширялся в соответствии с содержимым QTreeWidget? Вариант «вычислить максимальную ширину руками и задать её» понятен и предлагать его не нужно
Выглядит виджет так (конструктор):
C++ (Qt)
QVBoxLayout *layout = new QVBoxLayout(this);
layout->addWidget(_label);
layout->addWidget(_itemsTreeWidget);
layout->addWidget(_buttonBox);
QList<QTreeWidgetItem *> treeItems = treeItemsForItems(_items);
_itemsTreeWidget->addTopLevelItems(treeItems);
foreach (QTreeWidgetItem *treeItem, treeItems)
{
treeItem->setText(0, " " + treeItem->text(0)); // FIXME: dirty hack to place checkboxes near text
QCheckBox *checkBox = new QCheckBox(_itemsTreeWidget);
_itemsTreeWidget->setItemWidget(treeItem, 0, checkBox);
}
_itemsTreeWidget->setRootIsDecorated(false);
_itemsTreeWidget->resizeColumnToContents(0);
_itemsTreeWidget->resizeColumnToContents(1);
Результат при появлении такой (скрин 1), а хочется такой (скрин 2).