将项添加到已填充的组合框中

时间:2013-01-22 10:02:10

标签: python qt pyqt pyqt4 pyside

我已经使用 QSqlQueryModel 填充了一个组合框。这一切都很好,但是我想在组合框中添加一个可以说“ALL_RECORDS”的额外项目。这样我可以使用组合框作为过滤设备。

我显然不想在数据库中添加这个额外的项目,如何在模型填充之后将其添加到组合框中?

2 个答案:

答案 0 :(得分:1)

您可以使用代理模型从两个模型中获取数据,一个用于默认值,另一个用于数据库,并使用它来填充QComboBox

答案 1 :(得分:0)

您可以尝试类似

的内容
select "ALL RECORDS" union (select 'field' from table)

作为模型的查询。

这样你就可以将“ALL RECORDS”作为第一项,然后是所有其他值,但不是按顺序排列(无论如何这都是一个mysql问题)

如果您还想要对表中的值进行排序,您应该查看此消息

http://forums.mysql.com/read.php?97,144205,241169#msg-241169

解释了一个可能的解决方案,假设您使用MySql