위젯 툴킷(Standard Widget Toolkit)으로 이클립스에서 사용하고 있는 자바기반의 위젯 툴킷(Widget Toolkit)

우리가 사용하는 이클립스에 ViewPart,EditorPart등 도구를 만들기 위한 기초입니다.

 

ㅁ 구성

    

   Display객체, Shell객체 그리고 그 하위에 위젯에 개념이 들어간다

   OS swt.jar에 따라 여러가지 운영체계 프로그램을 만들 수 있다

   위젯은 기본이다

 

ㅁ 환경설정

    Java 프로젝트 생성 

   

해당 프로젝트에 swt.jar만 있으면 된다.

ㅁ 참고사이트

    http://www.eclipse.org/swt/

    각종 위젯등에 대한 예시 가 소스하고 함께 잘되어 있음

 

ㅁ Widget의 구성요소

ㅁ 각 위젯에 요소

    위젯은 좀 프로그램을 해본 경험이 있는사람의 경우 쉽게 알수 있기 때문에 많은 설명을 하지않고 단지 기능 요약을 해보겠습니다.

 1) Control 메소드

Control메소드

기능

getSize()

위젯크기를 표시하는 Point 객체반환

setSize(int,int)

너비와 길이 값 설정

setSize(Point)

Point 객체에 따라 위젯크기 설정

computeSize()

위젯 내용을 모두 보여줄수 있는 면적을 반환

computeSize(int,int,boolean)

위젯내용을 모두 보여줄수 있는 면적을 반환하고, 위젯 특성이 바뀌었는지 알려줌

pack()

위젯을 선호하는 크기로 재조정한다

pack(boolean)

위젯을 선호하는 크기로 재조정하고, 특성이 바뀌었는지 알려줌

getLocation()

위젯의 부모에 대한 상대위치

setLocation(int,int)

위젯의 부모에 대한 상대위치 설정

getBounds()

위젯의 크기와 부모에 대한 상대 위치를 반환한다

setBounds(int,int,int,int)

위젯의 크기와 부모에 대한 상대위치 설정

toControl(int,int)

화면 기준 좌표를 컨트롤 기준 Point 값으로 바꾼다

toControl(Point)

화면 기준 Point값을 컨트롤을 기준 Point 값으로 바꾼다

toDisplay(int,int)

컨트롤 기준좌표를 컨트롤 기준 Point 값으로 바꾼다

toDisplay(Point)

컨트롤 기준 Point 값을 Point 값으로 바꾼다

※ setSize() 보다 pack() 컨테이너 크기를 알아서 조절

 

2) Label 메소드

     위치        : SWT.LEFT, SWT.RIGHT, SWT.CENTER,

     구분선     : SWT.SPARATOR

     수직/수평 : SWT.VERTICAL, SWT.HORIZONTAL

     그림자     : SWT.SHADOW_IN, SWT.SHADOW_OUT, SWT.SHADOW_NONE

     ==>SWT에는 열거형 정수형으로 많은 타입을 가지고 있다

Label메소드

기능

getText()

 Label 텍스트 읽기

setText(String)

 Label텍스트 쓰기

getAlignment()

 정렬가져오기

setAlignment(int)

 정렬 setting

getImage()

 이미지 set

setImage(Image)

이미지 get

 

3) Button

     SWT.PUSH,

     SWT.ARROW | SWT.RIGHT

     SWT.TOGGLE

     SWT.CHECK, SWT.RADIO

 

4) Composite

     각Control을 집합으로 구성가능하다

4.1) Composite 기본

Composite 메소드

기능

getChiendren()

Control 객체의 배열을 반환한다

getLayout()

Composite에 연결한 레이아웃을 반환한다

setLayout(Layout)

Composite에 연결한 레이아웃을 설정한다

getTabList()

탭 순서에 따른 Control 객체의 배열을 반환한다

setTabList(Control[])

Composite의 위젯의 탭 순서를 설정한다

 

4.2) Composite의 하위클래스로 Scrollable 속성을 추가 사용         

Scrollable 메소드

기능

getClientArea()

Scrollable 객체에 가능한 화면 표시 면적을 반환한다.

computeTrim(int,int,int,int)

기대하는 클라이언트 영역을 위한 Composite의 필요 면적을 반환한다

getHorizontalBar()

수평 ScrollBar 객체를 반환한다

getVerticalBar()

수직 ScrollBar 객체를 반환한다

 

5)  Group

  그림자 속성과 함께 추가적으로 식각(etching)을 표시한다.

  SWT.SHADOW_ETCHEND_IN SHADOW_ETCHEND_OUT

6) SashForm

7) TabFolder

    getItemCount : TabFolder  TabItem 수반환

    getItems() : TabItem 객체의 배열을 반환

    getSelection() : 사용자가 어떤 TabItem을 선택했는지

    setSelection(): 선택될 탭을 설정

 7) LIst

 8) Combo

   style : SWT.SIMPLE, SWT.DROP_DOWN, SWT.READ_ONLY

 9) Tree

    ▶ 트리에서 사용하는 메소드 : Scrollable의 확장기능임.

메소드

기능

addSelectionListener()

선택 이벤트의 통지

addTreeListener()

TreeListener 인터페이스는 +확장  축소 할 때

select()/deselect()

현재 선택/ 제외

getSelection()

현재 선택항목

 show()

 주어진 항목을 보일때까지 스크롤

  Style로는 SWT.SINGLE, SWT.MULT

 TreeItem 메소드

메소드

기능

getItem()

 Tree 하위를 각각 TreeItem이라하면 불러오기

getChecked()

체크

setExpanded(boolean)

 확장

 

예제) Widdget Window에서 Tab을 만들고 그안에 두개 Composite가 구성된 Composite를 추가

Composite에는 Group Composite, SashForm Composite구성해보았다

 

 

'IT > RCP' 카테고리의 다른 글

[SWT] 클립보드  (0) 2020.12.19
[SWT] Drag & Drop  (0) 2020.12.19
[SWT] 다이얼로그  (0) 2020.12.19
[SWT] Layout  (0) 2020.12.19
[SWT] 이벤트  (0) 2020.12.19

+ Recent posts