需要与父面板一起增长的JTextArea

时间:2011-12-29 17:49:03

标签: java swing jtextarea layout-manager

我想让我的JTextArea字段与当前的JPanel一样大。怎么做?

现在是这样的:

    JPanel statusBar = new StatusBar(project);
    JTextArea outputBox = new JTextArea(1, 50); 
    outputBox.setEditable(true);
    statusBar.add(outputBox);

2 个答案:

答案 0 :(得分:5)

JPanel的默认布局管理器为FlowLayout,不会让文本区域填充面板中的整个可用空间。

使用BorderLayout应该效果很好:

statusBar.setLayout( new BorderLayout() );
JTextArea outputBox = new JTextArea(1, 50); 
outputBox.setEditable(true);
statusBar.add(outputBox, BorderLayout.CENTER);

答案 1 :(得分:4)

您需要JPanel上的布局管理器。如果它只包含在其中的JTextArea并且您需要最大化它,您可以使用简单的GridLayout:

   statusBar.setLayout(new GridLayout(1,1));