問題タブ [qstandarditemmodel]
For questions regarding programming in ECMAScript (JavaScript/JS) and its various dialects/implementations (excluding ActionScript). Note JavaScript is NOT the same as Java! Please include all relevant tags on your question; e.g., [node.js], [jquery], [json], [reactjs], [angular], [ember.js], [vue.js], [typescript], [svelte], etc.
c++ - QStandardItemModel/QTreeView でデータを操作していますか?
私のプロジェクトでは、データ ファイルを解析し、そのファイルに基づいて QStandardItemModel を作成し、QTreeView に表示します。モデルは正常に作成され、作成時に QStandardItem ごとに特定のパラメーターを設定する方法を知っています。たとえば、表示テキストとアイコンを設定する方法を知っています。各項目に「余分な」データを格納するための「カスタム コンテナー」を作成する方法はありますか?
データファイルから読み取り、それをモデルに解析することは(信じて)問題なく実行できます。ただし、ユーザーは QTreeView 内からモデルを編集/操作できる必要があります。これには、項目の追加と削除が含まれます。これは単純に見えますが、その項目に関連付けられたデータの一部は QTreeView に表示されません。ユーザーが編集しようとするまで、それはちょっと...「非表示」です。ユーザーはアイテムをダブルクリックして、他のパラメーターやデータを編集できるダイアログを表示する必要があります (非常に長い文字列や QTreeView に表示できないものなど)。
ツリー内の各項目に関連するすべての「追加データ」を保存する方法を見つけようとして、かなりの困難を抱えています。最初は、ある種の QVector が頭に浮かびますが、QVector を操作しながらモデルを操作するという手法は、私には理解できません。
さらに悪いことに、ユーザーは、以前のデータ ファイルに加えられた編集を保持したまま、異なるデータ ファイル (別名モデル) を切り替えることができる必要があります。
何か案は?ご不明な点がございましたら、お気軽にお問い合わせください。私はあなたが望む限り明確にすることができます. :) 御時間ありがとうございます。
python - ファイル パスのリストから QTreeView を生成する
この質問は、以前に次の場所で尋ねられました。
しかし、返事が来なかったようです。
次のようにフォーマットされたファイルパスのデータセットがあります。
そして、私は彼らに QTreeView (PySide) を埋めさせようとしています。私が持っている現在のコードは、単純な再帰関数を使用したものです。
ただし、既存の行の QStandardItem を調べる方法が見つからないため、結果として UI に次のように表示されます。
QStandardItem で重複行を検索する方法や、QStandardItemModel をトラバースして既存の QStandardItem を検索する方法はありますか? 私は過去2日間この問題に苦労しており、既存の例を見つけようとしていますが、これがどのように複雑になる可能性があるのか 本当に理解できません...
これに関するヘルプ/アドバイスをいただければ幸いです。ありがとう!
python - QListView に値を入力してデータを表示する方法は?
QListView を含むフォームを作成しています。次のコードを使用してデータベースから入力されます。
私の QListView は listUser という名前で、SELECT_USERS_ACCOUNTS() 関数は select id,name from table_user によって作成されたデータを返します。ユーザーが項目をクリックして QListView に移動するため、row[0] (table_user の id 列) も格納する必要があります。このIDをキャプチャしたい。前もって感謝します。
qt - QTableView の QStandardItemModel からアイテムを取得する
各ノードがデータ オブジェクトをQTreeView
表す があります。QVariant
ツリーでどれが選択されているかがわかるように、このデータ オブジェクトへのポインタを にパックすることができました。関数でノードにアクセスできますcurrentIndex()
。
ツリーのルートは にありQStandardItemModel::invisibleRootItem()
ます。他のノードは、親ノードappendRow
機能によって追加されます。そのため、で使用できるアイテムにはrow
とがありません。column
QStandardItemModel::item()
ノードに有効な座標を与えるか、座標なしでアイテムを取得する方法はありますか?
qt - qtreeview変更のシグナルは何ですか
で表される JSON ファイルから取得した辞書がありますQTreeView
QStandardItemModel
。
ユーザーは項目を再編成QTreeView
(追加、削除、ドラッグ アンド ドロップ) し、名前を変更できます。
目標は、 changed を読み取る関数を呼び出しQTreeView
、辞書を作成し、それを最初の JSON ファイルに書き込むことです。
変更が発生した後に a を押すQPushButton
か、その関数をすべての変更にバインドすることで実行できます。たとえば、アイテムが削除されたときに関数を呼び出す、アイテムが追加されたときに関数を呼び出す、アイテムの名前が変更されたときに関数を呼び出すなどです。
変更が発生した場合に関数を呼び出す方法はありますか? 上記のすべての変更に対応するシグナルはありますか?