Я использую JTabbedPane
в одном из моих кодов Java GUI.Я использую следующую часть кода для создания и поддержки tabpane
.
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"
.
Теперь, как мне выполнить желаемую работу, еслиКто-нибудь знает, пожалуйста, помогите.
Примечание: я использую NetBeans 6.8 с Java 6 Standard Edition.