SWT Simple Tree Example
- 프로그래밍/SWT & JFace
- 2016. 2. 21. 23:38
SWT Tree Example
Tree객체는 Composite을 상속받고 있기 때문에 Shell에 바로 등록가능하다.
Tree는 기본적으로 TreeItem을 추가하여 동작한다. TreeItem생성시 첫번째 인자에 의해서 부모객체가 결정된다.
Tree tree = new Tree(parent, SWT.NONE);
TreeItem item1 = new TreeItem(tree, SWT.NULL); // root 트리 노드가 됨
TreeItem item2 = new TreeItem(item1, SWT.NULL); // item1의 자식노드가 됨
또한 Tree 생성시 Tree의 두번째 인자에 따라서 Tree의 모양이 결정된다. 주로 사용되는 속성은 다음과 같다.
Tree tree = new Tree(parent, SWT.SINGLE) // 기본트리
Tree tree = new Tree(parent, SWT.MULTI) // Ctrl+클릭으로 멀티 선택이 가능한 트리
Tree tree = new Tree(parent, SWT.MULTI|SWT.CHECK) // 체크박스와 멀티선택이 가능한 트리
[소스코드]
1 2 3 4 5 6 7 8 9 10 11 12 13 14 15 16 17 18 19 20 21 22 23 24 25 26 27 28 29 30 31 32 33 34 35 36 37 38 39 40 41 42 43 44 45 46 47 48 49 50 51 52 53 54 55 56 57 58 59 60 61 62 63 64 65 66 67 | import org.eclipse.swt.SWT; import org.eclipse.swt.layout.GridData; import org.eclipse.swt.layout.GridLayout; import org.eclipse.swt.widgets.Display; import org.eclipse.swt.widgets.Shell; import org.eclipse.swt.widgets.Tree; import org.eclipse.swt.widgets.TreeItem; public class SWTSimpleTree { Display display = new Display(); Shell shell = new Shell(display); Tree tree; public SWTSimpleTree() { shell.setLayout(new GridLayout()); shell.setText("Simple Tree"); tree = new Tree(shell, SWT.BORDER); tree.setLayoutData(new GridData(GridData.FILL_BOTH)); // TreeItem 생성시 첫 번째 인자는 parent를 의미 // : tree 객체를 지정시 rootElement가 된다. TreeItem item = new TreeItem(tree, SWT.NULL); item.setText("ITEM"); // TreeItem 생성시 첫 번째 인자는 parent를 의미 // : 다른 TreeItem 객체를 지정시 대상 TreeItem의 하위객체가 된다. TreeItem item2 = new TreeItem(item, SWT.NULL); item2.setText("ITEM2"); TreeItem item3 = new TreeItem(item2, SWT.NULL); item3.setText("ITEM3"); TreeItem item4 = new TreeItem(tree, SWT.NULL); item4.setText("ITEM4"); TreeItem item5 = new TreeItem(item4, SWT.NULL); item5.setText("ITEM5"); System.out.println("item: " + item.getParent() + ", " + item.getParentItem()); System.out.println("item2: " + item2.getParent() + ", " + item2.getParentItem()); System.out.println(tree.getItemCount()); System.out.println(tree.getItems().length); shell.setSize(300, 200); shell.open(); // Set up the event loop. while (!shell.isDisposed()) { if (!display.readAndDispatch()) { display.sleep(); } } display.dispose(); } public static void main(String[] args) { new SWTSimpleTree(); } } | cs |
[결과화면]
출처 : http://www.java2s.com/Code/Java/SWT-JFace-Eclipse/Tree.htm
http://wiki.eclipse.org/JFaceSnippets
참고
'프로그래밍 > SWT & JFace' 카테고리의 다른 글
JFace TableViewer Example (2) | 2016.03.20 |
---|---|
SWT Table Example (0) | 2016.03.13 |
JFace Simple Tree Example (0) | 2016.02.29 |
SWT/JFace Layout (0) | 2016.02.15 |
JFace Event처리 (Action and Contribution) (0) | 2016.02.12 |
SWT Event 처리 (Event and Listener) (0) | 2016.02.11 |
TabFolder를 이용하여 탭화면 구성하기 (0) | 2016.02.10 |
화면에 표시되는 주요 클래스 구조 Widget/Control/Composite (0) | 2016.01.17 |
이 글을 공유하기