QListView获取多行选中的数据

时间:2023-11-20 11:42:02

由于自己需要做个小工具,其中用到了QListView这个控件,其实如何获取多行选中的数据查了一下资料之后,整理给大家,希望对大家有帮助哈。

1、用Qt Creator创建一个Qt Widgets Application工程,工程名为testListView。

QListView获取多行选中的数据

2、在mainwindow.ui主页面里加入QListView何QPushButton这两个控件,其中QListView用来显示数据。

QListView获取多行选中的数据

3、在mainwindow.cpp的构造函数里添加如下代码,主要是为了在QListView里面显示数据:QStandardItemModel * model = new QStandardItemModel(this);    QStandardItem* item1 = new QStandardItem("IPhone4");    QStandardItem* item2 = new QStandardItem("IPhone4s");    QStandardItem* item3 = new QStandardItem("IPhone5");    QStandardItem* item4 = new QStandardItem("IPhone6s");    model->appendRow(item1);    model->appendRow(item2);    model->appendRow(item3);    model->appendRow(item4);    ui->listView->setModel(model);

QListView获取多行选中的数据

4、右击工程名弹出的下来菜单中,点击【运行】在QListView中有会有数据出现了。

QListView获取多行选中的数据

QListView获取多行选中的数据

5、接下来在mainwindow.cpp中追加如下代码,点击主画面上的【获取选中数据】按钮,就可以获取到选择的值了

QStandardItemModel * model = qobject_cast<QStandardItemModel *>(ui->listView->model());    QModelIndexList modelIndexList = ui->listView->selectionModel()->selectedIndexes();    foreach (QModelIndex modelIndex, modelIndexList)    {     qWarning()<<"="<<model->data(modelIndex).toString();    }

QListView获取多行选中的数据

6、运行起来,选择QListView中的多个值,点击【获取选中数据】按钮,就可以获取选择的值了

QListView获取多行选中的数据

QListView获取多行选中的数据

猜你喜欢