問題タブ [qtreeview]
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.
qt - QTreeviewに2つの垂直ヘッダーを含めるにはどうすればよいですか?
上部のヘッダーを2つまたは3つの下部のヘッダー列にまたがらせたい。Qt c ++でそうする方法はありますか?
例を探しています。
ありがとうございました。
qt - 単一のQModelIndexの更新を停止します
時間の経過とともに変化するデータを含むQTreeViewがあり、dataChangedシグナルがQAbstractItemModelで毎秒発行されます。QTreeViewのアイテムも編集できますが、特定のアイテムのエディターを開くと、編集中にエディター文字列が更新されるため、非常に煩わしいです。エディターが新しい値で更新されないようにする方法はありますか?
qt - QT: QTreeView から継承しました。QStandardItem から継承しました。アイテムのスタイルを設定するにはどうすればよいですか?
私の Google スキルは、今日私を失敗させているに違いありません。
QTreeView から継承して、QAbstractItemModel の代わりに QStandardItemModel を格納する TreeView を作成しました。また、QStandardItem から継承して、必要に応じてアイテムにデータを格納するクラスを作成しました。
派生した QStandardItem を派生した QTreeView の QStandardItemModel に正常に挿入しました。問題は、スタイリングの仕方がわからないことです。QTreeView に setStyleSheet(QString) メンバーがあることは知っていますが、機能していないようです。正しい属性をスタイリングしていないのと同じくらい簡単かもしれません。任意のポインタをいただければ幸いです。ありがとう。
わかりやすくするために、ここに私のクラス定義を示します。
次のスタイルシートを試しました:
qt - PyQt: ソート後に QTreeView ノードを正しく展開したままにする方法
後でより複雑なプロジェクトのために QTreeModel と QTreeView を使用して簡単なテスト プログラムを作成しています。この単純なプログラムでは、QTreeView で予想されるように、縮小または展開できるグループにデータがあります。データは、さまざまなデータ列で並べ替えることもできます (QTreeView.setSortingEnabled が True)。各ツリー項目はデータのリストであるため、TreeModel クラスに実装されているソート関数は、組み込みの Python リスト ソートを使用します。
問題は、ルートの子項目の並べ替えを変更するたびに (ツリーの深さが 2 レベルしかないため、これが子を持つ唯一のレベルです)、ノードが以前のように必ずしも展開されないことです。何も展開したり折りたたんだりせずに並べ替えを元に戻すと、ノードは並べ替えの変更前と同じように展開されます。
誰かが私が間違っていることを説明できますか? ソートされたノードで QModelIndex を適切に再割り当てしていないと思われますが、よくわかりません。
python - QTreeView内のQHeaderViewを右クリックします
複数の列を持つQTreeViewの子孫を作成しました。ユーザーが列ヘッダーを右クリックしたときに表示されるポップアップメニューを作成したいと思います。このためにQTreeViewからの信号をキャッチしようとしましたが、QTreeViewはヘッダーで信号を送信していないようです。QTreeView.header()はそうします。したがって、次のいずれかを行う必要があると思います
。1:QHeaderViewのシグナルの1つをポップアップ関数に接続します-右クリックでトリガーされるシグナルを見つけることができませんでした-sectionClicked、sectionHandleDoubleClicked、sectionDoubleClicked、sectionPressedを試しました(驚くことではありませんダブルクリック関数はシングル右クリックをキャッチしませんでしたが、ダブル右クリックはキャッチします)
または、
2:独自のMousePressEvent関数を使用してQHeaderViewの子孫を記述し、それをヘッダーに使用します。これまでのところ、新しいヘッダークラスをQTreeViewの子孫に接続することに失敗しています。実行時にセグメンテーション違反が発生し続けますが、これ以上の説明はありません。
何か案は?
qt - QTreeView で太字の行を設定する
pyqt アプリケーションに QTreeView のカスタム サブクラスがあります。ユーザーが行を強調表示および「ローライト」(より適切な用語がないため) できるようにしようとしています。強調表示された行には、太字のテキストと (オプションで) 別の背景色を使用する必要があります。何か案は?
オプションとして StyleSheets を検討していますが、これまでのところそれを機能させることができていません。QTreeView のスタイルシートを設定した場合:
特定の状態で目的の行のみを保持する「状態」を手動で有効にする方法がわかりません。個々のアイテムのスタイルシートを設定しようとすると:
セグメンテーション違反が発生します。
私はスタイルシートが正しい道だとは確信していません。私はすべてのアイデアを受け入れます。ありがとう!
qt - アイテムをクリックしてQTreeViewで選択を解除することは可能ですか?
アイテムが入っていないQTreeViewの一部をクリックして、QTreeViewのアイテムの選択を解除できるようにしたいのですが、とにかくこれを行う方法が見つからないようです。アイテム上にないクリックをインターセプトしますが、QTreeViewにclicked
シグナルがないため、これを行う方法を理解できません。
qt - QTreeView のメモリ消費量
私は今、QTreeView の機能をテストしていますが、1 つのことに驚きました。QTreeView のメモリ消費量は、アイテム数 O_O に依存しているようです。このようなタイプのモデル ビュー コンテナーは、表示されているアイテムのみを追跡し、残りのアイテムはモデル内にあるため、これは非常に珍しいことです。データを保持せず、1,000 万のアイテムがあることを報告するだけの単純なモデルを使用して、次のコードを作成しました。MFC、Windows API、または .NET ツリー/リストを使用すると、このようなモデルではメモリが消費されません。これは、10 ~ 20 個の可視要素のみが表示され、アイテムのスクロール/展開時にさらに多くのモデルを要求するためです。しかし、Qt では、このような単純なモデルでは最大 300Mb のメモリが消費されます。アイテムの数が増えると、メモリ消費量が増加します。たぶん、誰かが私が間違っていることを教えてくれますか? :)
python - PyQt: QTableView のチェックボックスの配置を変更します
チェックボックスがありますがQTableView
、チェックボックスは左に配置されており、中央に配置する必要があります。これを試しましたが、「チェック」機能に問題があります。
「チェック」機能とは?PyQt で C++ の例を再実装するにはどうすればよいですか?
qt - QTreeView の最後の展開状態を復元するには?
私が持っているもの:
QTreeView
テーブルデータを持つクラス- そして連結
QAbstractTableModel
モデル
質問: アイテムの展開状態を保存する方法は? ソリューションを完成させた人はいますか?
PS: このコードを自分で実行できることはわかっていますが、時間があまりありません。これは私たちのプロジェクトの主要な問題ではありませんが、アプリにはそのようなテーブルがたくさん含まれているため、それでも必要です。ツリー項目を展開するたびに煩わしいプロセスです...