void SomeClass::moveColumnToFront(int column, QTableView *table) {
// I assume that you are using QStandardItemModel
QStandardItemModel *model = qobject_cast<QStandardItemModel *>(table->model());
if (model) {
QList<QStandardItem *> columndData = model->takeColumn(column);
model->insertColumn(0, columndData);
}
}
你應該學會搜索文檔!是的,可以使用
QAbstractItemModel
API來完成。但請記住,型號必須支持此功能(
QStandardItemModel
呢)!如果您使用某種自定義模型,則可能無法正常工作。
void SomeClass::moveColumnToFront(int column, QTableView *table) {
bool success = table->model()->moveColumn(QModelIndex(), column,
QModelIndex(), 0);
}
是否有任何方式使用QAbstractItemModel來代替? – thnkwthprtls 2015-02-11 16:26:29