QTableView获取具有相似列值/数据的行列表

时间:2018-02-08 15:16:26

标签: qt qtableview

我有QTableView来自.csv文件生成的数据。 QTableView包含一个名为Date(QDateTime)的列,涵盖一个月以上。我想从QTableView中选择一个日期并拆分该日期的数据,这样我就可以对其他列中的值进行汇总和平均。

与SQL表查询或此c#LINQ语法类似:

var result = context.data.Where(n => n.date == date);

1 个答案:

答案 0 :(得分:2)

您可以迭代表视图数据并提取所需的信息。作为演示,请看一下给定的例子:

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
    }
  }
}