0
は、私は単純なバイナリツリーのプリンタを持っていますそれはUI上にあるので、JLabelに入れても機能しません。< html>と\ n - > < br>の代わりにフォーマットしようとしましたが、どちらもうまくいきません。それをするの?私はJFormattedTextFieldを試しましたが、うまく動作していないようです。フォーマットのJLabel JTextBox
ありがとうございます。
は、私は単純なバイナリツリーのプリンタを持っていますそれはUI上にあるので、JLabelに入れても機能しません。< html>と\ n - > < br>の代わりにフォーマットしようとしましたが、どちらもうまくいきません。それをするの?私はJFormattedTextFieldを試しましたが、うまく動作していないようです。フォーマットのJLabel JTextBox
ありがとうございます。
これを実現する方法はいくつかあります。構造をペイントできるカスタムコンポーネントを作成することができます。 JTree
を使用するか、JTextArea
のようなものを使用できます。トリックは、おそらくグラフィカル環境でうまく動作するように起こっているこのようなテキスト表現、代わりに、あなたが考慮するかもしれない固定幅フォント
String tree = "│ ┌── K\n"
+ "│ ┌── F\n"
+ "│ │ │ ┌── L\n"
+ "│ │ └── J\n"
+ "│ ┌── C\n"
+ "│ │ │ ┌── I\n"
+ "│ │ └── E\n"
+ "└── A\n"
+ " │ ┌── H\n"
+ " │ ┌── D\n"
+ " │ │ └── G\n"
+ " └── B";
JTextArea ta = new JTextArea(15, 25);
ta.setText(tree);
ta.setFont(new Font("Monospaced", Font.PLAIN, 13));
JFrame frame = new JFrame();
frame.add(new JScrollPane(ta));
frame.pack();
frame.setLocationRelativeTo(null);
frame.setVisible(true);
を使用していることを確認作っている
構造体自体をペイントできるカスタムコンポーネント、または 'JTree' – MadProgrammer