我在JTabbedPane中的(多个)JScrollPane中有一个JTextArea.
我需要访问JTextArea.如果没有JScrollPane,则可以执行以下操作:
JTextArea c = (JTextArea)jTabbedPane1.getComponentAt(i);
在JScrollPane中如何获取?
干杯,
Gazler.
解决方法:
这行看起来很复杂,但是我认为可以做到这一点.
JTextArea c = (JTextArea) (((JViewportView) (((JScrollPane) jTabbedPane1.getComponentAt(i)).getViewport()))).getView();
但我认为将您的TextArea存储在ArrayList中会更有趣.
因此,您可以执行以下操作:
List<JTextArea> listAreas = new ArrayList<JTextArea>();
...
JTextArea c = listAreas.get(i);
创建一个新的是这样的:
JTextArea c = new JTextArea();
jTabbedPane1.addTab("Title", new JScrollPane(c));
listAreas.add(c);
希望这可以帮助.