0

我有一个基本的 QTableView,它使用 QSqlTableModel 显示来自 SQLite 表的数据。

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

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

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

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

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

4

1 回答 1

1

根据您的描述,您不必担心重新粉刷任何东西。只需QButton在行的最后一个单元格中添加一个。有几个关于向 a 添加按钮的答案/文章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
于 2012-11-15T14:07:37.103 回答