Qt:QTableView如何添加一行?

Posted

技术标签:

【中文标题】Qt:QTableView如何添加一行?【英文标题】:Qt: QTableView how to add a row? 【发布时间】:2012-10-29 08:45:36 【问题描述】:

我有一个 QTableView,里面有数据。添加行的最简单方法是什么?

谢谢!

【问题讨论】:

【参考方案1】:

当您使用 som YourModel 在 YourTableView (QTableView) 中显示它时,应该这样做:

YourModel->insertRow(YourModel->rowCount(QModelIndex()));
// paste some data to new row

模型更新导致视图更新

【讨论】:

如果我有一个矩阵作为成员属性,在其上调度“重塑”方法(例如,将 3x3 矩阵扩展为 4x4,其尺寸由 2 个 QLineEdit 组件设置)并自动反映这种变化的观点?调用 n 次“insertRow()”不是一种选择 请看一下。请注意,我之前没有任何 Qt 经验,但我对 C++ 有一定的经验。 gist.github.com/jkomyno/73b13e3091b7ff0b7207fd6bc1af6a95 抱歉,从第一次开始没有捕获,继承自 QStandardItemModel - 所以你的模型 setRowCount, setColomnCount 可以工作。 或在 TableModel 中 beginInsertRows();插入行(...); endInsertRows();【参考方案2】:

QTableView 是基于模型的,如果您不知道什么是模型,那么我建议您阅读here。

使用 QTableWidget 对初学者来说更容易,你可以像这样添加一行

ui->tableWidget->insertRow(0);

【讨论】:

错误答案。它甚至没有回答最初的问题。 @alphalamco 发布了一个更好的帖子,我确信 OP Wild 标记它正确。我不能删除我会很艰难的答案 不是答案,初学者或高级,只是给出答案,然后给出建议...... thx

以上是关于Qt:QTableView如何添加一行?的主要内容,如果未能解决你的问题,请参考以下文章

Qt - 如何展开或折叠我的 QTableView

在 QTableView 中嵌入控件?

QT中QTableview表中内容修改?

QT中QTableview表中内容修改?

如何在 Qt 的 QTableview 中找到我的按钮的行号

如何根据内容调整 QTableView 的高度?