본문 바로가기

JAVA/SWT/JFACE

(6)
ScrolledComposite 사이즈 설정 ScrolledComposte 위에 동적으로 객체를 추가하여 사이즈 변경이 있을 때 setMinSize() 함수를 호출하여 추가되어 늘어난 사이즈를 설정해야 스크롤이 변경된 사이즈를 반영한다. ScrolledComposite.setMinSize(int width, int height)
이미지 설정 기능이 추가된 간단한 커스텀 이미지 버튼 클래스 아래 처럼 이미지 겔러리 기능을 구현 할 때 활용할 수 있다. ㅎ
SashForm을 활용한 보조영역 펼침 접힘 구현 UI 작업을 하다보면 아래와 같이 보조 영역에 대한 펼침과 접힘을 구현해야 할 경우가 생긴다. 이경우 SWT SashForm을 활용하는 것이 가장 깔끔하게 작업을 마무리 할 수 있다. ▼ 예제의 UI 구성 SashForm을 구성하는 컴포지트를 생성하고 각 컴포지트의 비중을 설정하는 것은 아래의 코드로 구현된다. // SashForm 생성 SashForm sashForm = new SashForm(compositeBody, SWT.NONE); // 메인 컴포지트 생성 Composite compositeMain = new Composite(sashForm, SWT.NONE); compositeMain.setBackground(SWTResourceManager.getColor(SWT.COLOR_GREEN));..
Canvas를 활용한 Custom 버튼 활용 상태를 Normal, Hover, Click, Toggle(선택한 상태)로 구분한 Custom 버튼을 Canvas를 상속받아 구현하였다. 또한 해당 Custom 버튼을 컴포지트에서 생성하여 활용하는 sample 코드도 구현하였다. 상단의 "ADD" 버튼을 선택하면 하단의 컴포지트에서 Custom 버튼이 생성되는 단순한 코드이다. 다면 주의할 점은 버튼을 생성하고 부모 컴포지트에서 "layout()"함수를 호출해줘야 한다는 점이다. "layout()"함수를 호출해주지 않으면 생성된 객체의 객체크기가 설정되지 않아 객체를 확인할 수 없게 된다. // TestApp.java // Custom 버튼 추가 btnNewButton.addSelectionListener(new SelectionAdapter() { @..
TableEditor를 이용한 Table 에디터 구성 TableEditor 란?테이블 과 에디터 (Text, ComboBox, Checkbox ..) 등의 에디터컨트롤을 연결 시켜 주는 기능을 수행하는 것으로 다음의 함수로 테이블에 설정할 에디터와 TableItem(row) 그리고 컬럼번호를 넘겨 테이블의 TableItem 의 컬럼에 Editor 를 설정하게한다. public void setEditor(Control editor, TableItem item, int column) 전시 구조는 TableEditor가 TableItem표면을 덮어 표시되는 형태로 되어 있다. 아래의 그림에서 TableEditor가 설정되지 않은 첫번째 checkbox 컬럼을 선택하면 TableItem이 선택 처리되는데 TableEditor가 설정된 두번재 컬럼 이후로는 선택 처..
JAVA 화면 캡쳐 코드 Display display = Display.getCurrent(); // browser => 캡쳐할 SWT 위젯 ==> 여기에서는 SWT Browser ! Point pt = browser.toDisplay(1, 1); Point ptSize = browser.getSize(); GC gc = new GC(display); final Image image = new Image(display, ptSize.x,ptSize.y); ImageData imgData = image.getImageData(); gc.copyArea(image, pt.x, pt.y); gc.dispose(); Shell popup = new Shell(); popup.setText("Image"); popup.addListene..