在QStandardItemModel中查找行可以通过以下步骤实现:
以下是一个示例代码,演示如何在QStandardItemModel中查找行:
// 创建一个QStandardItemModel模型
QStandardItemModel model;
// 添加数据到模型中
model.setItem(0, 0, new QStandardItem("John"));
model.setItem(0, 1, new QStandardItem("Doe"));
model.setItem(1, 0, new QStandardItem("Jane"));
model.setItem(1, 1, new QStandardItem("Smith"));
model.setItem(2, 0, new QStandardItem("Bob"));
model.setItem(2, 1, new QStandardItem("Johnson"));
// 定义查找条件
QString searchName = "Jane";
// 遍历模型的每一行
for (int row = 0; row < model.rowCount(); ++row) {
// 获取该行的索引
QModelIndex index = model.index(row, 0);
// 获取索引对应的数据
QVariant data = model.data(index);
// 判断数据是否满足查找条件
if (data.toString() == searchName) {
// 找到了目标行
qDebug() << "Found at row:" << row;
// 可以选择继续遍历查找其他满足条件的行,或者直接返回找到的行号
break;
}
}
在这个示例中,我们创建了一个QStandardItemModel模型,并添加了一些数据。然后定义了一个查找条件searchName,即要查找的姓名。通过遍历模型的每一行,获取每行的数据并与查找条件进行比较,如果满足条件则找到了目标行。最后输出找到的行号。
腾讯云相关产品和产品介绍链接地址:
领取专属 10元无门槛券
手把手带您无忧上云