QTableWidget 的列管理一般是手动一列列地设置。
比如这是一段 KDE 的代码:
bool DirOperatorDetailView::event(QEvent *event)
{
if (event->type() == QEvent::Polish) {
QHeaderView *headerView = header();
headerView->setSectionResizeMode(DirModel::Name, QHeaderView::Stretch);
headerView->setSectionResizeMode(DirModel::Size, QHeaderView::ResizeToContents);
headerView->setSectionResizeMode(DirModel::ModifiedTime, QHeaderView::ResizeToContents);
headerView->setSectionResizeMode(DirModel::Owner, QHeaderView::ResizeToContents);
headerView->setSectionResizeMode(DirModel::Type, QHeaderView::ResizeToContents);
headerView->setStretchLastSection(false);
headerView->setSectionsMovable(false);
} else if (event->type() == QEvent::UpdateRequest) {
// A wheel movement will scroll 4 items
if (model()->rowCount()) {
verticalScrollBar()->setSingleStep((sizeHintForRow(0) / 3) * 4);
}
}
return QTreeView::event(event);
}
【 在 miui 的大作中提到: 】
: 它可以resizeColumnsToContents,但有时候会缩成一图,我想resize Columns to par
: ent widget,可以做到吗?试了horizontalHeader()->setStretchLastSection(true)也
: 不太理想。
: ...................
--
FROM 183.253.146.*