Java jtext区域高度动态增加

Java jtext区域高度动态增加,java,swing,jtextarea,Java,Swing,Jtextarea,我用netbeans编码,我的问题是,每当我在jtextarea中动态添加文本时,textarea应该根据内容增加其高度,以便显示完整的内容,我不希望使用带有jtextarea的滚动条。我已经把两个滚动条都关掉了 int i=0; jtextArea.setText("hello"); while(i<20){ jtextArea.setText(jtextArea.getText()+"\nhello"); i+

我用netbeans编码,我的问题是,每当我在jtextarea中动态添加文本时,textarea应该根据内容增加其高度,以便显示完整的内容,我不希望使用带有jtextarea的滚动条。我已经把两个滚动条都关掉了

       int i=0;
      jtextArea.setText("hello");
      while(i<20){
         jtextArea.setText(jtextArea.getText()+"\nhello");
          i++;
      }
inti=0;
setText(“你好”);

而(i行为取决于您使用的布局管理器。例如,JFrame默认使用BorderLayout。因此,您可以执行以下操作:

JTextArea textArea = new JTextArea();
frame.add(textArea. BorderLayout.NORTH);
现在,文本区域将是框架的宽度,并将随着您的键入而增大,直到框架上没有更多的空间

我已经把两个滚动条都关掉了


如果不想使用scrollpane,则不要创建scrollpane。只需将文本区域直接添加到框架中。

是否尝试过setPreferredSize()?这应该可以正常工作。文本区域会自动增大。您看到了什么?请您解释一下如何使用它?@Drastislav…您是否在特定于IDE的布局管理器中设置了它?这可能是您的问题。@Oliver Watkins:文本区域会自动增大大小确实如此,但我希望它们不带滚动条和整个内容nt将显示在jtextarea中。我关闭了滚动条,因此只显示最后几行。是否没有选项根据动态添加的内容来增加textarea的高度?正如我上面给出的示例所示。@camickr:非常感谢。实际上,默认情况下,jtextarea附带了一个Jscrollpane。我已将其删除并现在它可以正常工作了。不,JTextArea默认情况下没有JScrollPane。在代码中的某个地方,您正在创建滚动窗格并向其中添加文本区域。在netbeans中,它会出现。这非常有用,谢谢