На этом снимке экрана вы можете видеть много места внутри строк:
Я использовал эти функции для изменения размера:
resizeRowsToContents(); resizeColumnsToContents();
Как мне лучше подходить для ячеек / размеров строк?
Попробуйте:
verticalHeader()->setDefaultSectionSize(int size) horizontalHeader()->setDefaultSectionSize(int size)
Попробуйте это:
void QHeaderView::setResizeMode(QHeaderView::ResizeToContents);
Я использую Qt 4.7, и это сработало для меня на QTableView:
QTableView
tableView->resizeColumnsToContents(); tableView->resizeRowsToContents(); tableView->horizontalHeader()->setResizeMode(QHeaderView::Stretch);
QTimer::singleShot(1, ui->tableView, SLOT(resizeRowsToContents()));
У меня такая же проблема, как и у многих других:
http://www.qtforum.org/article/13421/qtableview-how-to-make-rows-size-smaller.html
Моя работа по быстрому взлому простой таблицы с несколькими строками (предположим, что все строки одинаковы)высота текста, и это, вероятно, работает только для некоторых шрифтов, может быть, только на Windo):
int rowHeight = ui.tableView_Available->rowHeight(0) *1/2; for (unsigned int i = 0; i < model->rowCount(); i++) ui.tableView_Available->verticalHeader()->resizeSection(i, rowHeight);