我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"
.
现在我该如何做我想要的工作,如果有人知道请帮忙。
注意:我使用带有 Java 6 标准版的 NetBeans 6.8。