QTableWidget通过userdata查找行

QTableWidget通过userdata查找行

本文介绍了QTableWidget通过userdata查找行的处理方法,对大家解决问题具有一定的参考价值,需要的朋友们下面随着小编来一起学习吧!

问题描述

QTableWidget是否有一种方法来搜索包含用户数据的行?

QTableWidget have a method to search for a row with user data?

类似的东西:

//set user data
row->setData(0, Qt::UserRole, "ID001");

//find row by user data
int rowIndex = table->findByData("ID001");

推荐答案

您可以使用QAbstractItemModel::match()

QAbstractItemModel *model = table->model();
QModelIndexList matches = model->match( model->index(0,0), Qt::UserRole, "ID001" )

foreach( const QModelIndex &index, matches )
{
    QTableWidgetItem *item = table->item( index.row(), index.column() )
    // Do something with your new-found item ...
}

这篇关于QTableWidget通过userdata查找行的文章就介绍到这了,希望我们推荐的答案对大家有所帮助,也希望大家多多支持!

07-25 14:33