如何在Qtableview中多次选择期间获取所选行的列表?

时间:2015-11-14 00:07:48

标签: c++ qt4

我有Qtableview中的数据,我的任务是,当我做多个行选择时,我想要所有选定行的内容。或者至少我想知道我选择的行号是什么。

为此我写了代码,每次都给'零',即使我没有选择任何行。

ui->xvalue->setSelectionMode(QAbstractItemView::ExtendedSelection);
ui->xvalue->setSelectionBehavior(QAbstractItemView::SelectRows);
ui->xvalue->show();

QModelIndexList indexList =  ui->xvalue->selectionModel()->selectedIndexes();
int row;
foreach (QModelIndex index, indexList) {

row = index.row();
}
printf("\n%d\n",row);

我甚至试过这个,但没有用,我没有得到答案

QItemSelectionModel* selectionModel = this-> ui->xvalue->selectionModel();

QModelIndexList selected = selectionModel->selectedIndexes();
int num;
for(int i= 0; i< selected.count();i++)
{
    QModelIndex index = selected.at(i);
    qDebug() << index.row();
    num = index.row();

    printf("selected row is %d", num); 
}

0 个答案:

没有答案