0

tableModelというQAbstractTableModelモデルとlistModelというQAbstractListModelモデルを作成し、これらのモデルをそれぞれのビュー(QTableViewとQListView)に設定しました。listModelに基づいてtableModelをフィルタリングします。つまり、誰かがリストアイテムをクリックすると、テーブルビューが表示されます。リスト項目に基づいてフィルタリングされます。これらのモデルは完全に機能しています。フィルタリングを行う方法を教えてください。

QSqlModelでは、SQL関係を持つsetFilterメンバーを使用してこれを行うことができます。

4

1 に答える 1

1

テーブルビューとテーブルモデルの間の仲介役として機能するには、QAbstractProxyModelを使用する必要があります。したがって、リストモデルでアイテムがクリックされた場合は、テーブルプロキシに通知して、テーブルビューがクエリを実行するときに、テーブルモデルから不要なアイテムをすべて除外します。

于 2012-03-07T13:57:33.130 に答える