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如何添加一行?的主要内容,如果未能解决你的问题,请参考以下文章