라벨이 JTree인 게시물 표시

JAVA Tree CellRenderer - Icon setting

트리의 노드형태는 리스트와 콤보박스와 마찬가지로 CellRenderer인터페이스를 통해 관리한다. TreeCellRenderer라는 인터페이스가 있고, 이것을 구현한 DefaultTreeCellRenderer가 존재한다.  DefaultCellRenderer에는 노드의 아이콘을 변경할 수 있는 메소드 들이 존재한다.  void setLeafIcon(Icon icon) - leafnode 의 아이콘을 icon으로 설정한다. void setClosedIcon(Icon icon) - 닫혀진 node의 아이콘을 icon으로 설정한다. void setOpenIcon(Icon icon) - 열린 node의 아이콘을 icon으로 설정한다.   다음 예제는 DefaultTreeCellRender를 이용하여 아이콘을 변경하는 예제이다.  순서는 다음과 같다.  트리의 노드들을 생성하고 , 붙여주어서 트리를 만든다. DefaultCellRenderer객체를 하나 만들고, 아이콘 설정 메소드들를 이용하여 아이콘 설정 트리의 setRenderer()메소드를 이용하여 renderer를 변경한다. 완성된 트리를 pane에 붙임으로 완성한다. import javax.swing.*; import javax.swing.tree.*;;   public   class  TreeIcon  extends   JFrame {      protected   JTree  tree;          public  TreeIcon ( ) {          super ( "아이콘이 있는 트리" ) ;                  //트리만들어주기   ...

JAVA JTree Demo

이미지
노드를 하나씩 만들어서 , 차례로 붙여주면 된다. JTreeDemo.java import java.awt.*; import java.awt.event.*; import javax.swing.*; import javax.swing.tree.*; public   class  JTreeDemo  extends   JFrame   implements   MouseListener {      protected   JTree  tree;      public  JTreeDemo ( ) {          super ( "JTree Demo" ) ;                  DefaultMutableTreeNode  jcomponent=              new   DefaultMutableTreeNode ( "JComponent" ) ;          DefaultMutableTreeNode  jpanel=              new   DefaultMutableTreeNode ( "JPanel" ) ;          DefaultMutableTreeNode  jtextcomponent=              new   DefaultMutableTreeNode ( "JTextComponent" ) ;       ...