問題タブ [qtreewidget]

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.

0 投票する
2 に答える
3600 参照

qt - ドラッグ アンド ドロップのように、イベントにカスタム データを設定する方法は?

リストウィジェットとツリーウィジェットがあります。listwidgetitems をドラッグ アンド ドロップで listwidget 内に移動できるようにしたいのですが、listwidget が treewidget からドラッグされた項目からのドロップを受け入れるようにしたいのですが、その前に、データに何らかの処理を行いたいと考えています。

今すぐこれらすべてを行うことができますが、ツリーウィジェットから始まるドラッグ イベントにカスタム データを設定する方法を見つけることができません。

たとえば、treewidget に「Add DrawEffect」というテキストと QIcon を含む topLevelItem があり、listwidget 内にドラッグ アンド ドロップすると、次のように listwidget に新しい項目を追加したいと考えています。

そしてそうではない

このデータはいつ設定する必要がありますか?

これは、listwidget 内で listwidgetitems をドラッグ アンド ドロップするときに完全に正常に動作する、これまでのところ私のコードです。また、listwidget 内で qtreewidgetitems をドラッグ アンド ドロップするときにも機能しますが、追加する前にさらに処理を行いたい場合は、それらをそのままコピーします。

私のツリーウィジェットのコンストラクターで:

リストウィジェットのコンストラクターで:

listwidget の dropEvent の再実装:

ご覧のとおり、treewidget アイテムと listwidget アイテムを区別できますが、この後どうすればよいかわかりません...

私はこのようなものがOKだと思います:

ありがとう :/

0 投票する
1 に答える
645 参照

qt - トップレベルのアイテムを並べ替えるQtツリーウィジェット

QTreeWidgetItem<演算子をオーバーロードするのに苦労しています。

QTreeWidgetItems私は、いくつかのトップレベルのアイテムといくつかの子供たちのリストを持っています。ユーザーが「作成日」列をアクティブにしてツリーをソートすると、ソートは子レベルで行われます。

言い換えれば、次のような木を想像してみてください。

日付列をアクティブにして昇順で並べ替えると、結果はアイテムA、アイテムBの順になりますが、代わりに、アイテムの最初の変更日に並べ替えが行われます。アイテムB、アイテムAの順に返されます。最上位のアイテムはどれも展開されていないか、アクティブではありませんが。

0 投票する
1 に答える
219 参照

c++ - QTreeWidgetItemの座標でメニューをポップするには?

QT:私は QMenu を作成します:

現在のtreewidgetitemの上にポップしたいのですが、私が知っているのは次のとおりです。

だから私が使用する場合:

メニューは、アイテムではなく、マウスでクリックした位置にポップします。これはウィザードのようです:( 現在のアイテムの座標でメニューをポップするにはどうすればよいですか?

0 投票する
1 に答える
10646 参照

pyqt4 - pyqt4 ツリー ウィジェットの開発

私は木を書く必要がありますか?、pyqtで。次のようになります。

これには何がお勧めですか?QTreeWidget? QTreeView? これは、SQL クエリを作成するために使用するクリック可能なアイテムになります。
読んでくれてありがとう。

0 投票する
1 に答える
3057 参照

qt - QTreeWidgetItem を QCheckbox のようにスタイル化できますか?

QTreeWidgetItem を QCheckbox のようにスタイル化できますか?

私のチェックボックスのスタイルは次のとおりです。

また、QTreeWidgetItem のスタイルは何ですか? 私はドキュメントでそれを見つけることができません:(

ありがとう!

0 投票する
1 に答える
1754 参照

qt - QTreeWidget のチェック ボックスをクリックすると、currentItemChanged シグナルが生成されない

非リーフ アイテムのチェック ボックスをクリックすると、QTreeWidget が期待どおりに動作しません。私の QTreeWidget には 2 つのレベルの子があり、ツリー ウィジェットの各項目をチェックできます (項目ごとにチェック ボックスが有効になっています)。この QTreeWidget では、リーフ アイテムはユーザーが選択できますが、非リーフ アイテムは選択できず、すべてのアイテムが有効になり、ユーザーがチェックできます。

リーフアイテムフラグ設定

非リーフ アイテム フラグの設定

リーフ アイテムに関連付けられたチェック ボックスを直接クリックすると、Qt は currentItemChanged() シグナルを生成します。しかし、非リーフ アイテムの関連付けられたチェック ボックスを直接クリックすると、currentItemChanged() シグナルが生成されません。これは、非リーフアイテムの取り扱いに不便をもたらします。

Qt 4.7.4 では正常に動作していましたが、Qt 4.8.1 ではすべてのプラットフォーム (Windows、Darwin、および Linux) で動作していません。

このバグを再現するためのサンプル プログラムを添付しました。

これはバグですか、それとも予想される動作ですか?

Qt 4.8 を使用するすべてのプラットフォーム (Linux CentOS、Windows 7、および MacOS) でこのバグに気付きました。

0 投票する
1 に答える
241 参照

c++ - QTreeWdigetが特定の場所に子要素を追加します

必要な場所に要素を挿入できる方法でツリーを構築しようとしています。これは初期段階の私のツリーです:

ここで、バージョン1.1を作成し、との間の場所に追加したいVersion 1.0としVersion 2.0ます。好き:

insertChild( http://doc.qt.digia.com/4.7-snapshot/qtreewidgetitem.html#insertChild )を使用して追加しようとしましたが、アイテムがツリーに作成されません。これはコードです:

しかし、ツリーには何も挿入されません...私が間違って何をしているのか分かりますか?

0 投票する
4 に答える
14759 参照

python - QTreeWidgetItem を削除する方法

いくつかの Web ページは、 delete またはingQTreeWidgetItemによって削除できると述べています。QTreeWidget.clearしかし、以下の私のコードサンプルはそうではないようです。私は何か間違ったことをしていますか?

次のように印刷:

TreeWidgetItemChild私の削除アクションではなく、プロセスの終了時に削除されるように見えます。

0 投票する
1 に答える
1288 参照

qt - QTreeWidget (アイテムのスタイルの適用)

ツリー ウィジェットがあり、ツリーには次の 3 つのレベルがあります。

レベルに応じてアイテムに異なるスタイルを適用して、LEVEL1、LEVEL2、および LEVEL3 を異なるスタイルにできるようにしたいと考えています。2 レベルのツリーでこれを行うことができます。助けてください。これをCSSレベルで実現したい(コードに触れずに)

私は次のドキュメントを通過しました。LEVEL1 と LEVEL2 の区別が難しい部分だと思います。

http://doc.qt.digia.com/main-snapshot/stylesheet-examples.html#customizing-qtreeview

0 投票する
2 に答える
1375 参照

python - QTreeWidget ダブルクリックでアニメーションを展開

を作成し、QTreeWidgetアニメーションを true ( setAnimated(true)) に設定しました。アイテムの左側にあるマーク (三角形) をクリックするとスムーズに展開されますが、アイテムをダブルクリックすると展開が速すぎます (ほとんど「アニメーション」フラグが設定されていないようです)。ダブルクリックでもスムーズなアニメーションが必要です。どうすればこの問題を解決できますか?

QTreeViewQTreeViewPrivate::expandOrCollapseItemAtPosマーククリックとダブルクリックで呼び出すQTreeViewPrivate::expandため、これらのメソッドにアクセスできません。

Qt アプリケーションの作成に PySide を使用しています (ただし、C++ を試してみましたが、問題は同じです)。