从JScrollPane获取组件

时间:2011-04-23 13:39:20

标签: java swing

如果JEditorPane中有JScrollPane,您如何从滚动窗格中获取编辑器?

我尝试了scrollPane.getComponents(),但编辑器不在列表中。

2 个答案:

答案 0 :(得分:31)

JViewport viewport = scrollPane.getViewport(); 
JEditorPane editorPane = (JEditorPane)viewport.getView(); 

答案 1 :(得分:5)

一种方式:

JViewport viewport = scrollPane.getViewport();
Component[] components = viewport.getComponents();

虽然您可以拥有一个类字段,该字段包含对编辑器窗格的引用,并以这种方式更轻松地获取它。

编辑:根据Jeanette和Rob的说法:视口保持单个子组件的最佳方法是使用getView()方法。

我最初的回答让我想起了H.L. Mencken的一句话:

  

“对于每个复杂的问题,都有一个简洁,清晰,简单和错误的解决方案。”