java - JScrollPane 中 JTextArea 上的滚动条不起作用

标签 java swing jscrollpane jtextarea

我无法让 JTextArea 滚动。我不确定您如何弄乱 JScrollPane,但我似乎搞砸了,只是看不到它。这都是一个更大项目的一部分,但下面的代码是我如何创建 JTextArea 并将其添加到 JScrollPane。当您在文本区域的边缘之外键入内容时,滚动条不会出现。将垂直滚动条设置为始终打开会产生一个不执行任何操作的滚动条。

import javax.swing.*;
import java.awt.*;

public class TextAreaTest extends JFrame{

    public TextAreaTest() {
     super("Text Area Scroller");

     Container c = getContentPane();

     JTextArea textarea = new JTextArea();
     textarea.setPreferredSize(new Dimension(300, 50));
     textarea.setLineWrap(true);
     textarea.setText("xx\nxx\nxx\nxx\nxx\nxx\nxx\nxx\nxx\nxx\nxx\nxx\nxx\nxx\n");

     JScrollPane scroller = new JScrollPane(textarea);

     c.add(scroller, BorderLayout.CENTER);
     pack();
     setDefaultCloseOperation(JFrame.EXIT_ON_CLOSE);
    }

    public static void main(String args[]){
     TextAreaTest instance = new TextAreaTest();
     instance.setVisible(true);
    }
}

我试过在构造函数中设置文本区域文本或行和列,但都不起作用。这让我很头疼。有什么想法吗?

最佳答案

设置滚动 Pane 而不是文本区域的首选大小。

关于java - JScrollPane 中 JTextArea 上的滚动条不起作用,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/2687023/

相关文章:

java - SetId(),然后在java中以编程方式findviewById

java - 解密在android中由openssl加密的文件

Java UI 标记替代 HTML?

java - JComponent 未显示,paintComponent 未调用

java - 测试运行程序 JUnit5 未找到测试

java - 如何更改 JButton 的文本颜色

java - 我直接从 'Java all in one for Dummies' 中取出这段代码....为什么它不起作用?

java - 带有 JScrollPane 和原型(prototype)单元格值的 JList 包裹元素名称(用点替换而不是显示水平滚动条),为什么?

java - 垂直滚动条覆盖jtable的最后一列数据(最后一列数据右对齐)

java - 将 JScrollPane 添加到从 JPanel 扩展的类