2014-04-06 10 views
1

뷰에 매개 변수를 전달하고 열려고합니다. 나는 이런 식으로 시도해.뷰 열기 매개 변수 전달

MyView view = new MyView(parameter); 
PlatformUI.getWorkbench().getActiveWorkbenchWindow().getActivePage().showView(viewID); 

하지만 오류 메시지가 얻을

내가 그것을 어떻게 해결할 수 "플러그인 클래스 '보기'를 인스턴스화 할 수 없습니다"? 감사합니다.

답변

1

showView 항상보기의 새 인스턴스를 만들고 클래스에 매개 변수 생성자가 필요하지 않습니다. 사용자가 표시하는 방식으로보기 클래스를 만들 수 없습니다.

setParameter
IViewPart part = PlatformUI.getWorkbench().getActiveWorkbenchWindow().getActivePage().showView(viewID); 

((MyView)part).setParameter(parameter); 

당신이 당신의 뷰 클래스에 추가하는 방법입니다 :

showView은 당신이 할 수 있도록 만든 IViewPart 반환합니다.

+0

감사합니다. 그러나보기에서 매개 변수를 표시해야합니다. 매개 변수를로드 한 후 어떻게 뷰를 새로 고칠 수 있습니까? – Ivan

+0

뷰가 표시되기 전에이 뷰가 호출 될 것이라고 생각합니다. 어떤 경우 든 트리/테이블 뷰어에서'setInput' 또는'refresh' 호출은 새로 고침됩니다. –

+0

메서드가 호출되기 전에 뷰가 열립니다. 내가 어떻게 리프레쉬 할 수 없는지 미안하다. – Ivan