問題タブ [treeviewer]
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.
java - SWT DragSourceEvent 画像がマウス ポインタに正しく固定されていない
SWT のツリー ビューアーからドラッグ アンド ドロップすると、次の問題が発生します。dragSourceEvent
例えばの画像属性を設定しています
これは、ツリー ビューアー ノードに長いラベルがある場合を除き、正常に機能します。長い文字列があり、ノードのキャプションの右端からドラッグ イベントを開始すると、ドラッグ イメージが正しく固定されておらず、実際にはツリー ノードの開始点からの距離に応じて X ピクセルがオフセットされていることがわかります。文字列をツリー ノード文字列の末尾に追加します。
誰でも何か提案はありますか?Yee は、そのアイデアを得るためにデモを行う必要があるでしょう。誰もこれを見たことがありますか?
java - org.eclipse.jface.viewers.TreeViewer は何も表示しません
以下の例が機能しないのはなぜですか?
TreeNodeEx
クラスは、LISP のような構文の初期化を可能にするクラスです。
つまり、リストの最初の要素は親を意味し、末尾はメンバーであることを意味します。
テキスト出力は、構造が正常に表示されることを示しています。
eclipse - モデルが変更されたときにEclipse JFace Treeviewerを更新しますか?
を使用して RCP アプリケーションを開発していTreeViewer
ます。Viewer に編集サポートを追加する方法 (およびビューの変更がモデルでどのように更新されるか) を説明する記事は数多くありますが、基になるモデルが変更されたときに Treeview を更新する方法はあまり見つかりません。要するに私の質問:
TreeView ----> モデルの更新 ------ 例がたくさんあります
モデル---->ツリービューの更新-----これは私の質問です
編集:これは私が試したもので、うまくいきます。コメントください
java - SWT TreeViewer から項目を削除するには?
私は Eclipse Standard Widget Toolkit ( SWT ) を使用しています。アイテムを含む TreeView オブジェクトがあり、ダブルクリック イベント ( addDoubleClickListener ) は正常に動作しますが、アイテムを削除するための右クリックを実装する方法がわかりません。
java - 強調表示されたときに SWT ツリー ノードのテキストの前景を変更する
私は SWT/JFace テクノロジーにかなり慣れていないので、頭がおかしくなるという問題を発見しました。Eclipse RCP アプリケーションには、ラベル プロバイダーによってラベルとアイコンを提供する JFace TreeViewer を使用して SWT ツリーを配置したビューがあります。顧客の要求により、ツリーの背景色は濃い青、フォントの色は白です。この色の組み合わせにより、ノードが選択されたときにノードのテキストがうまく表示されず、テキストがツリー領域に収まらず、ノード上にマウス ポインターを置いたときに表示されなくなります。どういうわけか「ネイティブのハイライト」が表示されます。これは、次の図に示すことができます。
一方、マウスを置いたノードが選択されていない場合、この問題は発生しません。強調表示すると、フォントの色が変わり、見やすくなります。これは、次の図に示すことができます。
いくつかの調査を行った後、イベントのリスナーを追加することで、選択したノードの背景色を変更してから選択を無効にできることがわかりました。SWT.EraseItem
これにより、独自の選択背景スタイルを定義し、ノードが選択されていないときに OS を強制的に強調表示するためにのSWT.SELECTED
フラグを無効にすることもできます。event.detail
この「解決策」は合理的です。主な欠点は、私の選択スタイルが Windows 7 の既定のビジュアル テーマにしか適合しないことです。これらの「Windows クラシック」または「ハイ コントラスト」では、視覚化の問題が発生します。さらに (そしてこれが最も厄介な問題です)、SWT.EraseItem
(イベントを処理するコードがなくても) のリスナーを追加すると、2 つの新しい問題が発生します。
これにより、次の図に示すように、SWT または JFace のいずれかがツリー ノードのアイコンを間違った場所に描画します。
ツリーのルート ノードのハイライトは完全に間違っています。次の画像でわかるように、ノードは 2 つの異なる方法で強調表示され、アイコンが繰り返されているように見えます。
私の質問は基本的に2つです。
主な問題に対するより簡単な解決策があると思いますか? 私が望むのは、選択したノード(最初の画像のノード)を2番目の画像と同じ方法で表示することです。選択したノードの前景色を変更して見やすくしたいと考えています。
このアプローチを使用する場合
SWT.EraseItem
、アイコンを正しい場所に表示する方法はありますか? この動作は既知のバグですか?
前もって感謝します。
java - TreeViewer の余分な水平スペースを取得しないコンポジット
TreeViewer からのデータからコンポジットを水平方向に埋めようとしていますが、成功しません。何か提案があれば、よろしくお願いします。
私が使用しているコードは次のとおりです。
java - SWT の Tree Viewer にダブルクリック展開を追加する
ツリー項目のダブルクリックは完全に正常に機能しますが、キーボードで CTRL + M を押すと、ツリー項目が展開または折りたたまれます。この理由を教えてください。これは Eclipse のバグですか、それとも CTRL+M を押すとこのダブルクリック機能がトリガーされるのはなぜですか?
ありがとう。