JScrollPane不起作用

nic*_*cks 3 java swing jscrollpane jtextarea

这是一个简单编辑器的代码.

public class editor {
    public static void main(String[] args) {
        JFrame f = new JFrame();
        final JTextArea area = new JTextArea(20,120);
        JScrollPane scrollingResult = new JScrollPane(area,JScrollPane.VERTICAL_SCROLLBAR_ALWAYS, JScrollPane.HORIZONTAL_SCROLLBAR_ALWAYS);
        f.getContentPane().add(scrollingResult);
        ...
    }
}
Run Code Online (Sandbox Code Playgroud)

这不起作用.JTextArea很好,所以是Frame,但JScrollPane仍然是残疾人.为什么会这样?

Suj*_*jay 5

您刚刚创建了一个JTextArea并将其添加到了JScrollPane.但是我看不到任何文字被添加到你的JTextArea.滚动选项仅在您有滚动内容时激活.

此外,我建议你改变你的HorizontalScrollBarPolicyVerticalScrollBarPolicyJScrollPane.HORIZONTAL_SCROLLBAR_ALWAYS&JScrollPane.VERTICAL_SCROLLBAR_ALWAYSHORIZONTAL_SCROLLBAR_AS_NEEDEDVERTICAL_SCROLLBAR_AS_NEEDED分别.

  • @NikaGamkrelidze:很难猜测,但可能是每个组件的"大小".如果您需要更多见解,请考虑发布您的代码的[SSCCE](http://sscce.org/)版本. (3认同)
  • @NikaGamkrelidze - 不!但是,当你无法滚动时,为什么还需要一个激活的滚动条? (2认同)
  • 通常,将文本区域包装在单词上是最佳的,根据需要使用垂直滚动条,而从不使用水平滚动条.+1为你的答案. (2认同)