带有 QSqlTableModel 的 QTableView 的数据输入

Data Entry for a QTableView with QSqlTableModel

本文关键字:输入 数据 QTableView 带有 QSqlTableModel      更新时间:2023-10-16

>我有一个基本的QTableView,使用QSqlTableModel显示SQLite表中的数据。

数据

输入由父对话框完成,父对话框具有许多表示字段数据的小部件和一个"添加"按钮。数据删除是通过"删除所选行"按钮完成的。

一切都非常实用,但我发现它非常笨重,想尝试更好的方法。

理想情况下,我希望视图中有一个空行,用户可以简单地开始键入他们的数据。在每行的末尾都有一个按钮来删除该特定行(有点像垂直标题,但带有按钮而不是行号)。

我认为这可以通过子类化 QTableView 来实现,但必须重新绘制所有内容的想法有点令人生畏......

没有人对我如何解决这个问题有建议,也许使用代表(诚然,我以前没有使用过)或我忽略的另一种更简单的方法?

根据您的描述,您不必担心重新绘制任何东西。只需在行的最后一个单元格中添加QButton即可。关于向QTableView添加按钮有几个答案/文章:

  1. http://qtadventures.wordpress.com/2012/02/04/adding-button-to-qviewtable/
  2. 将按钮添加到 QTableview

其次,允许用户直接添加行,请阅读本文有关使模型可编辑和插入/删除行的部分。

  1. http://doc.qt.io/archives/qt-4.7/model-view-programming.html#making-the-model-editable