Я студент-программист и использую Qt для создания интерфейса GUI для работы. У меня есть QTreeWidget
, в общей сложности 8 столбцов. Входные данные, которые необходимо ввести в каждый из этих столбцов, довольно малы. В связи с этим я пытался найти способ изменить размер всех столбцов до минимально необходимого места. очень похоже на действие, которое выполняется при нажатии на разделители. Я просмотрел несколько веб-сайтов и документацию по Qt и не нашел решения. После просмотра документации кажется, что есть множество способов сделать это, но я не могу заставить один работать. Я начинаю думать, что мне нужно что-то включить / отключить. Как будто изменения, которые я записываю в свою функцию построения (эта функция очищает таблицу; считывает данные из моего вектора, отображает определенные данные в таблице, а затем предполагает изменение размера заголовков / столбцов до размера, достаточного для соответствия размеру содержимое колонки) даже не применяются. Я пробовал следующее без изменений:
ui->treeWidgetInjections->setColumnWidth(i, minimumWidth());
ui->treeWidgetInjections->resizeColumnToContents(i);
ui->treeWidgetInjections->header()->ResizeToContents;
ui->treeWidgetInjections->header()->resizeSection(i, minimumWidth());
Все это находится в конце моей функции сборки (удалена несвязанная информация):
ui->treeWidgetInjections->clear();
for (int i=0; i < qTreeInjectionData.size(); i++)
{
//fill Qtree with items;
//fill QTree items with data;
//re size function here;
}
Пожалуйста, оставляйте только продуктивные отзывы, так как меня интересует только изучение и преодоление этой проблемы. Заранее спасибо!