0

我使用 a using aQTableView与从QAbstaractTableModel. 现在我想插入行/列(代表状态/输入字符),但我需要将状态/输入字符的字符串作为标签(然后显示在 HeaderView 中)传递给我的数据类。

bool TransTableModel::insertRows(int position, int rows, const QModelIndex &index)
{
    beginInsertRows(index, position, position+rows-1);

    garage->addUsedState("q6");

    endInsertRows();
}

TransTableModel是我的定制模型。我的问题:如何从用户那里获取这个字符串?在这种情况下,我硬编码"q6"为标签,但我需要用户提供它。有办法吗?我应该打开一个输入对话框吗?来自模型班?

4

1 回答 1

1

如果模型需要这些数据,它应该由视图提供,然后可以打开一个输入对话框。

您可以向模型添加一个成员函数以传递该额外参数并从视图类调用它,而不是调用“常规” insertRows(您也不必调用insertRows该新函数,只需beginInsertRowsendInsertRows)。

于 2012-09-07T12:32:19.420 回答