자바 프로그래밍을 할때 손으로 소스코드를 타이핑해가면서 UI를 디자인 하기에는 그리 쉬운일은 아니다.

Visual Studio 같은 IDE에서는 기본으로 UI 디자인을 쉽게 할 수 있다.
Netbeans 도 있긴하지만 외부 패키지를 import 해서 써야하므로 좀 껄끄럽다.
이클립스에도 이러한 플러그인이 있으니,
 알만한 사람들은 알만한 이클립스의 visual editor 플러그인

UI 디자인을 쉽게 할 수 있는 툴이다
visual editor

이 플러그인이 이클립스 3.2에서는 쉽게 설치가 되었으나, 3.3으로 넘어가면서 약간 까칠해졌다 -_ -;

지금부터 설치 방법을 적어보도록 하겠다.
이클립스 다운로드
일단 설치과정에 사용한 이클립스 버전은 3.3.. IDE for Java Devlopers 으로 했다.
사실 어느 패키지를 사용해도 별 문제가 없다.

이클립스 프로젝트에 보면 VEP가 있긴한데 그 곳은 오래된 버전이라, Visual editor 위키페이지에 설치방법이 나와있다.
Visual editor 다운로드
http://www.ehecht.com/eclipse_ve/ve.html 에 가서 위 파일을 받는다.
사용자 삽입 이미지
다운받은 파일들 압축을 적당한 곳에 푼다.

이클립스 실행!
eclipse!!
자 이제 본격적으로 VE(Visual editor)를 설치할 차례다.

메뉴의 Help > Software Updates > Find and Install...

Search for new features to install 선택
New Local Site 버튼을 눌러 Visual Editor 플러그인의 압축을 푼 폴더를 선택해준다.
업데이트 사이트는 아래에 선택되어있는 Europa Discovery Site와 방금 추가한 로컬 사이트를 선택해준다.

나머지는 스샷을 보고 따라하면 별 무리 없을것이라 생각된다.
사용자 삽입 이미지
미러 서버 선택후 패키지 정보를 받아오고 나서 Visual Editor 선택하면 의존성 에러가 난다

사용자 삽입 이미지

당황하지말고 Select Required 를 눌러보자...
오류가 사라지지 않는다면 아래 화면처럼 Europa Discovery Site 를 펼친뒤에 다시 Select Required 를 눌러본다(필요한 패키지들이 자동으로 선택될 것이다).
사용자 삽입 이미지
다시 Select Required 를 눌러보면 위와 같이 선택이 되면서 의존성 문제가 해결된걸 볼 수 있다.(이건 이클립스 버그인듯 하다 -_-)

이후에는 프로그램 설치하듯이 진행하면된다.

설치가 끝나면 이클립스를 재시작 할거냐고 묻는데 재시작을 해주자.

설치가 끝났으니 테스트 -_-)/
아래 그림들은 프로젝트 생성하는 과정이다.
사용자 삽입 이미지
Visual Editor 플러그인을 설치하고 위와 같이 New > Other... 를 눌러보자

사용자 삽입 이미지
VIsual Class 가 있다!!
그 외에도 밑에 AWT/Swing/SWT등등이 있으니 적절히 써보도록 하자.

사용자 삽입 이미지
Visual Class 를 선택한 화면
스타일에서 Swing - Frame 를 선택, 클래스 이름과 몇가지 옵션을 선택해줬다.

Visual Editor 가 적용된 Eclipse

Visual Editor 가 적용된 Eclipse

Palette 윗부분의 ◀ 버튼을 누르면 익숙한 UI가 나타난다.

사용자 삽입 이미지
JFrame 위에서 오른클릭을 해서 레이아웃을 설정하는 모습.

사실 자바 책같은곳에 보면 대부분 Layout Manager 를 사용해서 코딩을 하지만,
null 을 선택하게되면 원하는 위치에 Swing Component들을 배치 할 수있다.
하지만 웬만하면 레이아웃 매니저를 쓰는걸 권장하고 싶다.

사용자 삽입 이미지
null 레이아웃 상태.. JButton을 배치해보자!

사용자 삽입 이미지
버튼 이름을 물어보는데 가급적이면 이런 이름들은 아무렇게나 적지말자 ;
간단한 프로그램 같은 경우는 무시해도 되겠지만,
규모가 커질듯한 프로그램이나, 여럿이서 공동작업을 한다고하면 .....

버튼을 만들었으니 이벤트를 연동 해보자!

사용자 삽입 이미지
setText 라는 메뉴가 있긴한데,
한글로 적으면 제대로 입력이 되질 않는다 -_-;
밑의 프로퍼티에 입력을 하거나, 코드상에서 직접 써주자.

버튼에서 오른클릭 > Events 에 가보면 눈에 익은 문구가 하나 보인다
actionPerformed ! 버튼에 대한 기본 동작인데...
Add Events 를 선택해보면 AddKeyListener, MouseListener 등등 여러가지들이 나온다.
어찌되었건 기본 동작인 actionPerformed 를 선택

사용자 삽입 이미지
JOptionPane 을 이용해서 메세지 박스를 띄우는 코드를 집어넣었다.



실행해보자!!
사용자 삽입 이미지
버튼을 누르면 예상했던대로 메세지박스가 뜬다!

하지만 이 플러그인으로 디자인을 하고 소스코드를 보면 상당히 지저분해지기(컴포넌트 하나 추가할때마다 get~~~~~~ 이런 method 가 생김) 때문에, 생성된 코드를 직접  정리 해주는것이 좋다.


참 쉽죠?

참 쉽죠?


2008/05/17 01:28 2008/05/17 01:28

자테온 0.22b 와 0.17a 를 릴리즈 합니다.

아시는분은 아시겠지만 0.2x 버전은 swt 를 이용한것이고
0.1x 버전은 swing 을 이용한것입니다.

swt 가 지원되지 않는 환경이나, swing 버전을 원하시는 분들이 간혹계셔서
swing 버전을 이렇게 릴리즈 하게 되었습니다.

간혹 로그인이 안된다고 하시는 분들이 계신데,
테스팅 해 주실수 있으신분들은 자테온 포럼에 글을 남겨주시거나 쪽지를보내주시면 감사하겠습니다.

0.17a 버전 변경사항은 README_swing.txt 파일을 보시면 되겠습니다만,
리소스 (아이콘 이미지, 사운드) 파일들을 jar 밖으로 분리했습니다.
Look and Feel 버그를 수정했고,
pure java code를 목표으로 했기때문에 JNI를 사용해서 구현했던 트레이는 뺐습니다.

0.22b
리소스 파일을 분리했습니다.
대화창 포커싱 문제 고쳤습니다 -_-
그룹관련 기능 추가했습니다.
기타 수정사항은 README.txt 파일을 읽어보세요

jateon 0.22b

자테온은 포럼에서 구하실 수 있습니다.
http://jateon.kfmes.com

2007/07/19 02:51 2007/07/19 02:51

자바 프로그래밍을 하다보면
가끔씩 새로 뜨는 프레임이 포커싱이 되지 않아야 되는데
저절로 포커싱이 되서 약간(?) 불편한 경우가 생기곤 한다.

예를들자면 메신저에서 새 프레임이 뜨는 경우
열심히 타이핑하고있는데 불쑥 창 하나 떠서 그쪽으로 포커싱된다면??

-_-;;

이 문제를 해결하기 위해서
삽질하다가 알게된 코드  -_-;

여기서 this 는 JFrame 이다.

포커싱 되지 않게 해 놓은 다음에 보여주고~
포커싱 되게 설정을 해놓는 ..
여러번 테스트 해 봤는데 잘 작동하는것 같다.

[CODE type="java"][tab]this.setFocusableWindowState(false);
[tab]setVisible(true);
[tab]this.setFocusableWindowState(true);
[/CODE]
2007/02/15 22:27 2007/02/15 22:27

ubuntu edgy 또는 dapper에서 beryl(베릴)을 사용 할 수가 있다.

헌데 swing으로 작성된 프로그램의 일부 프레임이 나타나지 않는 현상이 발견됬다.

irc #ubutnu 채널의 sakuragi 님께서 알려주신내용

다음과 같이 고쳐주면 문제없이 잘 보인다.

ubuntu dapper, edgy 에서 테스트 해봄.
/etc/environment 파일에

AWT_TOOLKIT="MToolkit"

를 추가 해줌.
2006/11/05 17:57 2006/11/05 17:57