QTableView 获取具有相似列值/数据的行列表
Posted
技术标签:
【中文标题】QTableView 获取具有相似列值/数据的行列表【英文标题】:QTableView get list of rows with similar column values/Data 【发布时间】:2018-02-08 15:16:26 【问题描述】:我有QTableView,其中包含从 .csv 文件生成的数据。 QTableView 有一个名为 Date (QDateTime) 的列,涵盖了一个多月。我想选择一个日期并将该日期的数据从QTableView 中拆分出来,这样我就可以对其他列中的值进行汇总和平均。
类似于 SQL 表查询,或此 c# LINQ 语法:
var result = context.data.Where(n => n.date == date);
【问题讨论】:
【参考方案1】:您可以遍历您的表格视图数据并提取您需要的信息。作为演示,请查看给定的示例:
void findDates(QTableView *table, const QDateTime &date)
auto model = table->model();
const int dateColumn = 1; // The column with the dates data
for (int row = 0; row < model->rowCount(); ++row)
auto idx = model->index(row, dateColumn);
auto data = idx.data();
auto d = data.toDateTime();
// Comparison of dates
if (d > date)
// Do something
else
// Do something else
【讨论】:
你的例子和我从中得到的想法,解决了我的问题,所以谢谢。以上是关于QTableView 获取具有相似列值/数据的行列表的主要内容,如果未能解决你的问题,请参考以下文章