7

Nimbus のルック アンド フィールを使用しています。このリンクによると、JTree で 3 つの異なる線スタイルを実現できるはずです。

ここに画像の説明を入力

次のコードを使用している間:


theTree.putClientProperty("JTree.lineStyle", "Horizontal");

私の JTree は次のようになります。

ここに画像の説明を入力

「水平」スタイルではなく、「なし」スタイルです。なぜこれが考えられるのでしょうか?Nmbusと関係がありますか?そのプロパティを設定した後、何か特別なものを呼び出す必要がありますか?

ありがとう

4

3 に答える 3

6

JTree.lineStyleNimbus がこのプロパティをサポートしているとは思えません。MetalLookAndFeel だけが行います。

javax.swing.plaf.synth.SynthTreeUI(Nimbus で使用される) とMetalTreeUI(Metal で使用される)のソース コードを見てください。

MetalLookAndFeel に変更して、動作するかどうかを確認します。

于 2011-02-18T15:30:17.803 に答える
5

次のようにすることで、この効果の一部を得ることができます

NimbusLookAndFeel laf = new NimbusLookAndFeel();
UIManager.setLookAndFeel(laf);
nimbUID = laf.getDefaults();
nimbUID.put("Tree.drawHorizontalLines", true);
nimbUID.put("Tree.drawVerticalLines", true);

完璧ではありませんが、近いです。

于 2012-04-28T18:00:57.440 に答える