如何用 QSqlTableModel 中的列替换行?

Posted

技术标签:

【中文标题】如何用 QSqlTableModel 中的列替换行?【英文标题】:How to replace rows with columns in QSqlTableModel? 【发布时间】:2012-03-28 22:22:40 【问题描述】:

我找到了很多关于如何在 SQL 中将行转换为列的答案。但我需要将行转换为 QSqlTableModel 中的列。 据我了解,这应该不是一项非常艰巨的任务,但我找不到如何实现它的任何想法。 或许data()、setData()等一些方法可以重新实现,但我怕漏掉什么……

或者,也许应该重新实现 QTableView 的某些方法。

【问题讨论】:

【参考方案1】:

据我了解,QIdentityProxyModel 可用于解决此问题。 不幸的是,QIdentityProxyModel 从 4.8 版开始可用。

所以我继承了 QAbstractProxyModel 并实现了 mapToSource() 和 mapFromSource()、rowCount()、columnCount() 以及其他几个方法来切换行和列。

【讨论】:

在这里显示您的子类的代码对于下一个提出相同问题的人来说真的很有帮助。 ;-)

以上是关于如何用 QSqlTableModel 中的列替换行?的主要内容,如果未能解决你的问题,请参考以下文章

在将数据从文件插入表时,如何用 NULL 替换 NA 值?

如何用sed命令替换一行中的某个字符串

如何用python将行排列成csv文件的列?

无论如何用 Handsontable 过滤行?

如何用VBA实现WORD批量替换?

如何用元组列表替换列表中正则表达式匹配的模式?