단일 Eclipse Workbench는 여러 개의 창을 작성할 수 있습니다. 각 창은 원근법을 사용하여 배치되므로 다른 창을 다른 원근법 또는 동일한 원근감으로 설정할 수 있으며 다른 창과는 별도로 각 창에서 원근법을 전환 할 수 있습니다.
각 창에 입력을 설정할 수도 있습니다. 이 기능은 각 창에서 다른 데이터로 작업하는 경우 유용합니다 (예 : 각 창을 다른 서버에 연결하거나 스키마가 동일하지만 데이터가 다른 여러 데이터베이스의 데이터를 표시 할 수 있음).
다른 모니터에서 동일한 데이터의 다른 시각을 볼 수 있도록 창만 사용하고있을 수 있습니다. 이 경우 프로그램 적으로 창을 작성할 필요는 없지만 워크 벤치에서 제공하는 조치 만 추가하면됩니다.
필드 선언에 추가 : 이것은 당신의 ActionBarAdvisor 클래스를 수정하여 수행 할 수 있습니다
newWindowAction = ActionFactory.OPEN_NEW_WINDOW.create(window);
register(newWindowAction);
:
private IWorkbenchAction newWindowAction;
하면 (일반적으로 방법이라고 makeActions) 행동을 코드에 추가
코드를 추가하면 메뉴를 만들 수 있습니다.
menu.add(newWindowAction);
메뉴는 typica입니다 창 메뉴에서만 사용할 수 있습니다. 응용 프로그램에서 이미 창 메뉴가없는 하나를 작성하려는 경우, 다음 줄은 작동합니다
MenuManager menu = new MenuManager(
"&Window",
IWorkbenchActionConstants.M_WINDOW);
이 당신에게 같은 방법으로 새 창을 생성하는 메뉴 항목을 줄 것이다 Eclipse IDE의 Window-> New Window 메뉴 항목으로 변경하십시오.
반면에 각 창에 다른 데이터를 표시하려면 새 창을 프로그래밍 방식으로 열어야합니다. 이렇게하면 각 창마다 다른 입력을 설정할 수 있습니다.
IWorkbenchPage newPage = window.openPage(inputObject);
여기서 inputObject에는 창에 표시된 데이터를 식별하는 정보가 들어 있습니다. 초기 관점을 설정하려면 페이지에서 setPerspective를 호출하여 수행 할 수 있습니다.
당신은 각 창에서 제목을 설정하는 것이 좋습니다
: WINDOWTITLE 창에 입력을 설명하는 문자열입니다
newPage.getWorkbenchWindow().getShell().setText(windowTitle);
합니다.다음과 같이
당신은 윈도우에 대한 입력을 가져올 수 :
window.getActivePage().getInput()
당신은 당신이 당신의 창에 입력으로 사용하는 어떤 클래스에이 캐스팅 할 수 있습니다.
위대한 시작 stackoverflow, 감사합니다! – tomash
이것은 RCP3입니다, 맞습니까? – Weltraumschaf