問題タブ [treemodel]

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 投票する
0 に答える
402 参照

java - Java7のNIOを使用したファイルシステムJTree

JTrees標準のJavaAPIを使用してファイルシステムを表示する例をたくさん見てきましたFileTreeModelJava7の新しいNIOAPIを使用するJTreeの実装例(おそらくカスタムを使用)はありますか?次の適切な使用法を示す例を見てみたいと思います。

  1. WatchServicesファイルシステムが別のプログラムまたはユーザーによって変更されたときにJTreeを更新する
  2. FileVisitorsノードのコンテンツを取得するには
  3. 操作に時間がかかる場合のツリーノードコンテンツの非同期ロード
0 投票する
1 に答える
397 参照

java - JTreeがDefaultTreeModelからのイベントを処理するのに、TreeModelからは処理しないのはなぜですか?

jTree内で呼び出されて定義されたjTree.treeModelHandlerが、treeNodesChangedイベントとtreeNodesInsertedイベントの両方に空白のメソッドを実装していることに気付きました。DefaultTreeModelはtreeNodesInsertedイベントを発生させ、jTreeはそれ自体を更新します。ただし、TreeModelから同じイベントを発生させても、何も起こりません。

明らかなメソッドが実装されていない場合、TreeがDefaultTreeModelからどのように更新できるかを理解できません。

ここで何が欠けていますか?

更新:回避策org.jdesktop.swingx.tree.TreeModelSupport。キットの素晴らしいビット!TreeModelインターフェイスオブジェクトにフィールドとして追加されました。次に、すべてのfireing&treeModelListenerメソッドをそれに委任しました。DefaultTreeModelよりもJTreeの方がうまく機能し、JXTreeでもさらにうまく機能します。単一の選択/挿入/削除のみを実装しましたが、これまでのすべてのテストでツリーは正しく動作しました。

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

swing - JTree カスタム モデル ノードの追加/削除/変更

そんな困った。オーバーレイ データベース構造があり、JTree を使用してアイテムを表示します。モデルの単純化されたビューは次のとおりです。

また、 mlまたはその内部アイテムから何かを削除しても、ツリー構造は変わりません。fireTreeModelChangedのようなメソッドが見つかりませんでした。

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

java - JTree ルート ノードのファイル システム パスを取得するにはどうすればよいですか?

次のコードで気付きました

問題は、root値がファイル システム上のファイルへのパスではなく「ルート」であることです。

私が期待するのは、ツリーに応じて「C:\」または「D:\」のようなものです。

この問題に遭遇した人はいますか?

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

python - Python で gtk.ListStore フラグを変更または表示する方法

ListStore オブジェクトに接続された TreeView があります。関数の 1 つが ListStore.get_iter_next() を呼び出します。ListStore のデータは毎回変わるので、 iter がメモリリークを起こしているのではないかと疑っています。

ListStore に gtk.TREE_MODEL_ITERS_PERSIST フラグが設定されているかどうかを確認し、TreeModel.get_flags()ドキュメントで説明されているように設定を解除する必要があります。

どうすればそれができますか?

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

c++ - QtツリーモデルをQSetで機能させるにはどうすればよいですか?

追加、名前変更、その他の操作を行うときに、常にツリーノードの下で自動的に並べ替えられるアイテムを使用してツリーを構築したいと思います。std::setは私のデータコンテナの良い候補のようです。ただし、ツリーアイテムはインデックスまたは行番号を介してアクセス、挿入、または削除されるため、QtツリーはベクトルまたはQList(ポインターベクトル)を優先するようです。セット内のアイテムのインデックスを計算するために、std::distanceのような関数を使用しています。しかし、私はそれが非常に遅いと思います(テストされていません)。Qtツリーモデルをstd::setで機能させるための良い方法はありますか、それともデータにベクトルを使用する必要がありますか、それを行うために新しいコンテナーを開発する必要がありますか?どうもありがとう!

答えを見つける:boost :: container::flat_setを使用します。ありがとう。

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

c++ - Qtでツリービューのアイテムを選択するために使用できる関数はどれですか?

Qt でツリー ビュー (またはモデル) の項目を選択するために使用できる関数はどれですか? 関数がツリービューまたはモデルにあることさえ知りません。どうやってするの?select(const QModelIndex & index) のような関数はありますか? ありがとう。

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

c++ - Qtがツリーアイテムを高速にナビゲートするようにするにはどうすればよいですか?

ノードの下に1,000,000アイテムのQtツリーを開発しました。このコードは、 http: //qt-project.org/doc/qt-5.0/qtwidgets/itemviews-simpletreemodel.htmlにある単純なツリーモデルの例に似ています。

「終了」キーをクリックすると、最後の項目に移動するのに15秒かかります。それを速くする方法はありますか?

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

java - ファイルとサブディレクトリを含むシリアライズ可能な TreeModel を構築するには?

TreeModelJava アプリケーション用にビルドしようとしています。シリアル化して経由で送信する必要があるため、インターフェイスを実装しているため、ObjectOutputStreamを使用しようとしています。DefaultTreeModelSerializable

わかりました、私はそれで大丈夫だと思います。

私の質問はDefaultTreeModel次のとおりです。ディレクトリ(引数として渡されるDefaultMutableTreeNodeと思いますか?)とそのすべてのファイルとサブディレクトリを含むをどのように構築できますか?

私はそれを達成しましたJTreeが、シリアライズ可能ではないようです。ドキュメントの例を理解できないため、行き詰まっています。

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

java - スクロール時に JTree がひどくぼやける

JTreeの中に がありJScrollPane、スクロールバーを使用すると、下の画像でわかるように、ツリーがすべてぼやけます。

ウィンドウを最小化して復元するか、ツリーをクリックしてノードを展開または折りたたむなど、再描画するために何かを行うと、通常に戻ります(ただし、ウィンドウを画面からドラッグしても、ぼやけは消えません戻るか、別のウィンドウをその前にドラッグします)。

JTree にはカスタムTreeModelレンダラーとセル レンダラーがあります。最近の変更はTreeModel; セル レンダラーは長い間そこにあり、正常に動作していました。セル レンダラーは のサブクラスであり、(カスタム アイコンを表示するために) メソッドDefaultTreeCellRendererのみがgetTreeCellRendererComponentオーバーライドされています。

DefaultMutableTreeNode以前は、表示するデータを含むデータ構造から sを生成していましたが、ノード数が多い場合 (10,000 以上など) にパフォーマンスの問題が発生していました。私が持っていたデータはすでにツリー構造になっていたので、 を使用せずにその周りにカスタム TreeModel を作成するのは非常に簡単であることに気付きましたDefaultMutableTreeNode。これにより、JTree のデータがより迅速に読み込まれましたが、このぼやけたスクロールの問題が残っています。

ぼやけた JTree

以下のコードはアプリケーションからのものではありませんが、そのままコンパイルされ、問題が示されます。線を削除tree.setBackgroundすると、ぼやけた動作が停止します。