Java Java GUI 코드 중 하나에서 JTabbedPane
을 사용합니다. 다음 코드 부분을 사용하여 tabpane
을 인스턴스화하고 유지 관리합니다.JTabbedPane 구성 요소에 액세스
JTabbedPane tabpane = new JTabbedPane();
PageViewer pv = new PageViewer();
tabpane.addTab("tabttitle", new JScrollPane(pv));
PageViewer
는 JEditorPane
의 확장 클래스입니다. 현재 선택된 탭의 구성 요소 PageViewer pv
구성 요소에 액세스하여 수정하려고합니다. 나는 ind
의 몇 가지 값으로 다음 코드 행을 시도했다.
JScrollPane jsp = (JScrollPane) tabpane.getComponentAt(tabpane.getSelectedIndex());
PageViewer pv2 = (PageViewer) jsp.getComponent(ind);
그러나 ind==0
컴파일러
"java.lang.ClassCastException: javax.swing.JViewport cannot be cast to menu_window.PageViewer"
을 말한다.
ind==1
의 경우는 "java.lang.ClassCastException: javax.swing.JScrollPane$ScrollBar cannot be cast to menu_window.PageViewer"
입니다.
ind==2
의 경우 출력은 "java.lang.ClassCastException: javax.swing.JScrollPane$ScrollBar cannot be cast to menu_window.PageViewer"
입니다.
ind>=3
의 경우 오류는 "java.lang.ArrayIndexOutOfBoundsException: No such child: 3"
입니다.
이제 어떻게하면 도움이되는지 알고 있다면 원하는 작업을 수행 할 수 있습니다.
참고 : Java 6 Standard Edition과 함께 NetBeans 6.8을 사용합니다.
예! 당신 말이 맞아요. 이제 작동합니다. 감사. –