방랑로그

[eclipse] SWT 본문

IT개발/TOOLS

[eclipse] SWT

야키다 2017. 12. 15. 16:17

[eclipse] SWT 








긴 여정의 첫단추를 잘 껴보자 ^^ ..... 


[출처]진우님의 블로그

http://blog.naver.com/jinwooe/110012104192















1. SWT로 HelloSWT를 만들어 보자
 src=http://blogimgs.naver.com/imgs/nblog/spc.gifSWT/JFace 2006/12/15 11:53

http://blog.naver.com/jinwooe/110012104192



Java로 윈도우 프로그램을 만든다는 것은 개인적인 용도도 사용하기 위해서, Java 공부를 하다보니 AWT, Swing에 대한 얘기가 나오기 때문에...등의 몇가지 이유 말고는 사실 별 매력이 없었다. 상용 프로그램으로는 지금은 이클립스에 그자리를 넘겨줬지만 한 때는 꽤 유명했었던 개발 툴인JBuilder, Java 오피스 프로그램인 ThinkFree 이외에, Sun Microsystems에서 밀고 있는 개발 툴인NetBeans... 이외에 찾아보기가 쉽지 않은 것이 사실이다.그 이유는 간단한 것 같다. Java로 만든 윈도우 프로그램은 김태희의 말처럼 안 이쁘잖아...속도도 떨어지고...윈도의 UI에 익숙한 사용자에게 AWT, Swing은 좀 어색한게 사실이다. 몇 년간 Java를 사용하는 필자에게도 그런 느낌인데, 일반 사용자에게는 더욱 그러하리라 짐작된다.하지만 Java 세상은 바뀌고 있다.현재 Java 세계를 덮치고 있는 이클립스 프로젝트에서 발표한 SWT/JFace를 사용하면 친숙한 화면의 그래픽 속도도 훨씬 뛰어난 윈도우 프로그램을 개발할 수 있게 되었다.괜히 서두가 길어 졌는데...SWT에 대한 설명을 보시기 원하시는 분은 www.eclipse.org/swt를 참고하시기 바란다.


그리고 필자도 이제막 SWT/JFace 공부를 시작하였고, 공부하면서 정리하는 차원에서 글을 쓰는 것임을 말씀 드린다.참고로 여기에 나오는 예제와 설명은 SWT/JFace in Action - Manning 2005 이라는 책을 참고하는 것임을 밝혀 둔다. 물론 현재 이 책의 번역본이 나와있긴 하지만 번역서들이 원서만큼 못한 것 같아 시간은 좀 더 걸리겠지만 원서를 보기로 하였다. 그리고 이 책이 Eclipse3.0을 기준으로 설명하고 있는데, 글을 쓰고 있는 시점인 지금 버전은 Eclipse3.2.1이며 3.0과 다소 상이한 것이 있다.




1. Eclipse 설치


www.eclipse.org 사이트에 가서 최신 버전의 이클립스를 다운로드 한다. 현재 버전은 3.2.1이다.그리고 필자와 같이 한글 도움말과 메뉴를 사용하시고자 원하시는 분은 언어팩을 설치하도록 한다. 이클립스 언어팩을 설치하면 생각보다 깔끔한 한글화에 놀라실 수도 있을 것이다.http://download.eclipse.org/eclipse/downloads/ 제일 하단에 보시면 언어팩 리스트를 볼 수 있다.이클립스 설치는 인스톨러가 있는 것이 아니므로c:\eclipse와 같은 위치에 압축을 풀기만 하면 된다.언어팩을 설치하려면, 압축을 풀어서 이클립스가 설치된 디렉토리 밑에 plugins 폴더에 복사하면 설치가 끝난다.이클립스 사용법에 관한 얘기는 이 글의 주제를 넘어서므로, 다른 자료를 참고하시고 이후에는 어느정도 이클립스에 경험이 있다고 가정할 것이다. 양해 바란다.




2. HelloSWT


일단 예제 프로그램을 만들어 보자

파일 -> 새로 작성 -> 프로젝트 -> Java 프로젝트 -> 프로젝트 이름 입력


라이브러리 탭 선택 -> 변수 추가 -> 변수 구성 -> 새로 작성


그리고 아래와 같이 필요한 라이브러리를 변수로 만든다.


LIB_SWT : org.eclipse.swt.win32.win32.x86_3.2.1.v3235.jar

LIB_JFACE : org.eclipse.jface_3.2.1.M20060908-1000.jar

LIB_CORE_RUNTIME : org.eclipse.core.runtime_3.2.0.v20060603.jar

LIB_QUINOX_COMMON : org.eclipse.equinox.common_3.2.0.v20060603.jar

LIB_ CORE_COMMANDS : org.eclipse.core.commands_3.2.0.I20060605-1400.jar




( ** 위의 jar 파일은 ECLIPSE_HOME/plugins 디렉토리에 있슴)(** 위의 jar 파일 이름은 뒤에 버전 이름을 가지고 있기 때문에 여러분이 가지고 있는 것과 다를 수 있슴.)변수를 만든 후에 확인을 누르고

위에서 만든 변수들을 모두 선택한다.

참고로 HelloSWT라는 예제 필요한 것은 LIB_SWT밖에 없지만 나중에 JFace 예제를 실행하기 위해 여기에서 포함시킨다. 이렇게 하면 필요한 라이브러라가 클래스 패스로 설정이 되는 것이다.




import org.eclipse.swt.SWT;

import org.eclipse.swt.widgets.Display;

import org.eclipse.swt.widgets.Shell;

import org.eclipse.swt.widgets.Text;




public class HelloSWT

{


 /**

  * @param args

  */

 public static void main(String[] args)

 {

  Display display = new Display();

  Shell shell = new Shell(display);

 

  Text text = new Text(shell, SWT.CENTER);

  text.setText(Hello SWT);

  text.pack();

 

  shell.pack();

  shell.open();

 

  while(!shell.isDisposed())

  {

   while(!display.readAndDispatch())

    display.sleep();

  }

 

  display.dispose();


 }


}




코드를 작성한 후 저장을 하면 컴파일이 된다.




프로그램을 실행하기 위해서 패키지 탐색기에서 HelloSWT.java 선택 -> 오른쪽 마우스 클릭 -> 실행 도구 -> SWT 응용프로그램




프로그램이 실행 된다.




Eclipse3.0에는 SWT응용프로그램이라는 것이 없었다. 그래서 SWT가 필요로하는 swt-win32-3235.dll(버전이 다를 수 있음)과 같은 dll을 VM 파라미터 -Djava.library.path=swt dll 위치형식으로 지정해 줘야 했지만, 3.2 버전에서는 그럴 필요가 없어 졌다.




하지만 이클립스 플랫폼이 아닌 stand-alone으로 실행시킬 때에는 swt-win32-3235.dll 같은 네이티브 라이브러리가 반드시 필요하다. 왜냐하면 SWT는 기반 OS의 GUI 자원을 직접사용하기 때문이다.



    


name=scrapFrmCafe action=/post/scrap/scrapPopToCafe.jsp method=post none>        



'IT개발 > TOOLS' 카테고리의 다른 글

[ftp] filezilla ftp 프리웨어  (0) 2017.12.15
[eclipse] 환경변수 추가  (0) 2017.12.15
[eclipse] Aptana Plug In  (0) 2017.12.15
[eclipse] php 플러그인  (0) 2017.12.15
[eclipse] 인코딩 문제  (0) 2017.12.15
Comments