기은P
시간이 멈추는 장소
기은P
  • Programming (272)
    • 개발노트 (1)
    • FrontEnd (56)
      • ES&JS 문법 (14)
      • HTML&CSS (4)
      • React 기본 (18)
      • React 심화 (12)
      • React 이슈 (2)
      • Project 연습 (1)
      • Next.js (5)
    • Backend&Devops (33)
      • AWS (2)
      • Docker (9)
      • Jenkins (6)
      • Nginx (6)
      • Node.js (1)
      • ElasticSearch (5)
      • 프레임워크&아키텍처 (2)
      • 암호화 (0)
      • 기타 (2)
    • 알고리즘 (3)
    • C# (8)
      • WPF (8)
    • Java (51)
      • 순수 Java (18)
      • RDF&Jena (12)
      • RCP&GEF (9)
      • JMX (5)
      • JMapper (3)
      • 오류해결 (4)
    • Database (21)
      • RDBMS (9)
      • NoSQL (2)
      • TSDB (1)
      • GraphQL (1)
      • Hibernate (3)
      • 데이터베이스 이론 (4)
      • Redis (1)
    • 프로토콜 (11)
      • Netty (4)
      • gRPC (5)
      • 프로토콜 개념 (2)
    • Server (4)
      • Linux (4)
    • 2020 정보처리기사 필기 (43)
      • 목차 (1)
      • 기출문제 (1)
      • 1과목 - 소프트웨어 설계 (6)
      • 2과목 - 소프트웨어 개발 (7)
      • 3과목 - 데이터베이스 구축 (8)
      • 4과목 - 프로그래밍 언어 활용 (7)
      • 5과목 - 정보시스템 구축 관리 (10)
    • 2020 정보처리기사 실기 (31)
      • 목차 (4)
      • 기출예상문제 (19)
      • 실기요약 (8)
    • 빅데이터분석기사 필기 (4)
      • 목차 (0)
      • 필기 요약 (3)
    • 전기 공학 (1)
      • CIM (1)
    • 산업자동화시스템 (3)
      • SCADA (1)
      • OPC UA (2)
    • 디자인패턴 (1)
    • 휴지통 (0)

공지사항

  • 공지사항/포스팅 예정 항목

최근 댓글

최근 글

전체 방문자
오늘
어제

티스토리

hELLO · Designed By 정상우.
기은P

시간이 멈추는 장소

Eclipse RCP - plugin.xml을 사용한 view 생성
Java/RCP&GEF

Eclipse RCP - plugin.xml을 사용한 view 생성

2020. 4. 1. 13:17
반응형

Eclipse RCP - plugin.xml을 사용한 view 생성

 

1)     Command과정과 동일하게 plugin.xml – Extensions – Add 선택

 

 

2) View 검색 후 Finish

 

 

 

3)  Org.eclipse.ui.views 오른쪽 버튼 클릭 후 view 선택

 

 

 

4)     ID 작성 후 class*: 클릭 – Class Name 작성

 

 

5)     createPartControl에서 View에 Component, Layout을 추가해준다.

public class SampleView extends ViewPart {
	public SampleView() {
		// TODO Auto-generated constructor stub
	}
	@Override
	public void createPartControl(Composite parent) {
		// TODO Auto-generated method stub
		// View의 구성요소를 작성하는 코드
	}
	@Override
	public void setFocus() {
		// TODO Auto-generated method stub
	}
}

 

  •   추가적으로 Java에서 디자인 편집을 편하게 도와주는 Window Builder가 있다. Eclipse Market에서 다운로드 가능하다.

 

 

6)     윈도우 빌더가 설치되었으면 윈도우 빌더 에디터로 View Class를 열어준다.

 

 

 

7)     적당히 Layout먼저 지정하고 그 위에 컴포넌트들을 올린다. 나는 ID와 PW를 받는 TextInput을 구성했다. Design후 Source를 확인해 보면 아래와 같이 나온다.

 

public void createPartControl(Composite parent) {
		parent.setLayout(new GridLayout(2, false));
		
		Label lblId = new Label(parent, SWT.NONE);
		lblId.setText("ID");
		
		text = new Text(parent, SWT.BORDER);
		GridData gd_text = new GridData(SWT.LEFT, SWT.CENTER, true, false, 1, 1);
		gd_text.widthHint = 90;
		text.setLayoutData(gd_text);
		
		Label lblNewLabel = new Label(parent, SWT.NONE);
		lblNewLabel.setLayoutData(new GridData(SWT.RIGHT, SWT.CENTER, false, false, 1, 1));
		lblNewLabel.setText("PW");
		
		text_1 = new Text(parent, SWT.BORDER);
		GridData gd_text_1 = new GridData(SWT.LEFT, SWT.CENTER, true, false, 1, 1);
		gd_text_1.widthHint = 84;
		text_1.setLayoutData(gd_text_1);
}

 

 

8)     Plugin.xml로 돌아가서 Extension 탭 클릭 – Add.. – perspectiveExtensions 요소를 추가

 

 

 

 

생성한 View를 Window 화면에 붙히는 과정이다.

 

 

9)   *로된 perspectiveExtension을 클릭 – targetID를 적당히 수정

 

 

10)     오른쪽 버튼 클릭 – view 생성

 

 

11)    Details 설정을 id를 아까 생성한 View의 ID로, relative(연관관계)는 그냥 자신으로. Relationship은 stack을 사용하고, visible을 true로 바꿔준다

 

이 Extension Element Details은 View의 배치 위치를 정하고 배치 관계, 움직일 수 있는지의 여부 등 옵션을 정할 수 있다.

 

 

  • 실행을 하면 View가 추가가 될 수도 있고, 안 될 수도 있는데 프로그램을 실행할 때 이전 설정에 대한 정보가 Clear가 되어 있지 않아서 그럴 수 있다. Run Configurations 속성에 들어가서

 

 

 

 

  • 작업하고 있는 프로젝트를 클릭 후, Clear 항목을 선택한다. 아래 Ask for confirmation before clearing은 항상 실행할 때마다 정보를 Clear할 건지 묻는 창을 띄울 지를 묻는 건데, 나는 그냥 체크를 풀어놓는 편.

 

 

 

12) 실행 결과

 

반응형
저작자표시 변경금지 (새창열림)

'Java > RCP&GEF' 카테고리의 다른 글

[GEF] Eclipse GEF 3.11 다운로드 방법  (0) 2020.04.02
Eclipse GEF - Editor를 화면에 띄우는 방법  (0) 2020.04.02
Eclipse RCP - plugin.xml에서 View의 데이터 다른 View로 옮기기  (0) 2020.04.01
Eclipse RCP - plugin.xml을 사용한 Command Handler 생성  (0) 2020.04.01
[RAP] Missing Constraint: Bundle-RequiredExecutionEnvironment: JavaSE-1.8 오류 해결  (0) 2020.03.13
    'Java/RCP&GEF' 카테고리의 다른 글
    • Eclipse GEF - Editor를 화면에 띄우는 방법
    • Eclipse RCP - plugin.xml에서 View의 데이터 다른 View로 옮기기
    • Eclipse RCP - plugin.xml을 사용한 Command Handler 생성
    • [RAP] Missing Constraint: Bundle-RequiredExecutionEnvironment: JavaSE-1.8 오류 해결
    기은P
    기은P
    기은P의 블로그 일상과 개발 관련 포스팅 #React #Typescript #Next #Nest https://github.com/kimdongjang

    티스토리툴바