コンボボックスにQSqlQueryModelを設定しました。そのままですべて正常に動作していますが、コンボボックスに"ALL_RECORDS"と言うことができるアイテムを追加したいと思います。このようにして、コンボボックスをフィルタリング デバイスとして使用できます。
この余分なアイテムをデータベースに追加したくないのは明らかですが、モデルによって入力された後にコンボボックスに追加するにはどうすればよいですか?
2 つのモデルからデータを取得するプロキシ モデルを使用できます。1 つはデフォルト値用、もう 1 つはデータベース用であり、それを使用してQComboBox
.
次のようなものを試すことができます
select "ALL RECORDS" union (select 'field' from table)
モデルのクエリとして。
このようにして、最初の項目として「ALL RECORDS」を取得し、次に他のすべての値を取得しますが、順序どおりではありません (これはとにかく mysql の問題です)。
テーブル内の値も順序付けする必要がある場合は、このメッセージを確認する必要があります
http://forums.mysql.com/read.php?97,144205,241169#msg-241169
MySqlを使用している場合、考えられる解決策を説明します