我已经使用 QSqlQueryModel 填充了一个组合框。这一切都很好,但是我想在组合框中添加一个可以说“ALL_RECORDS”的额外项目。这样我可以使用组合框作为过滤设备。
我显然不想在数据库中添加这个额外的项目,如何在模型填充之后将其添加到组合框中?
答案 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