4

如何使用 QTreeWidget 显示 QtSql 表的内容?关于这个特定主题没有足够的信息......

4

1 回答 1

3

您的第一站应该是QT 文档中对模型/视图编程的介绍。尽管在 QT 文档中,它同样适用于 PyQt,我最近不得不在这方面取得进展,并发现它是迄今为止最好的起点。由此,您的 SQL 表是模型,您的树是视图。

具体来说,您可能希望使用QSqlQueryModelQSqlTableModelQSqlRelationalTableModel 之一作为您的模型类和QTreeView(而不是QTreeWidget在您的问题中)作为视图。所有这些链接中都有关于如何使用不同类的示例代码。

但是,从您的问题中不清楚您在 SQL 中的表如何映射到树视图 - 这使得提供任何更详细的不可能/准确的答案。

由于 SQL 表不会自然地映射到树,您可能必须考虑使用代理模型或自己扩展QAbstractItemModelQTreeView以使用它,因为这将特定于您的业务逻辑(以及您使用的是嵌套集还是物化路径ETC)。如果您没有在数据库中存储树,那么QListViewQTableView可能是更合适的视图对象。

于 2012-09-11T07:12:55.583 回答