java中文本区域的大小

时间:2013-09-12 14:42:29

标签: java swing jtextarea jcomponent preferredsize

我正在为基本GUI编写代码。我需要一个文本区域。但我无法使文本区域达到我想要的大小。我使用setPreferredSize方法来设置文本区域的维度。但它没有用。我也尝试了setSize方法,但也没有用。这是我的书面代码。

 private void textArea() {
    setTitle("TextArea");
    setSize(700, 500);
    setLayout(new BorderLayout());


    JTextArea textArea = new JTextArea();

    textArea.setPreferredSize(new Dimension(100,100));
    System.out.println(textArea.getSize());

    textArea.setBackground(Color.GREEN);
    textArea.setLineWrap(true);
    textArea.setWrapStyleWord(false);


    add(textArea,BorderLayout.CENTER);
} 

抱歉我的英语不好。 谢谢你提前。

2 个答案:

答案 0 :(得分:8)

setPreferredSize并不总是有效,而且,强烈建议您使用内置的布局管理器来处理任何大小调整问题。

尝试并设置文本区域中的列和行:

new JTextArea(5, 10);

答案 1 :(得分:1)

PreferredSize就是它所说的:首选尺寸。 边框布局决定了实际尺寸(考虑首选尺寸)。

请参阅:http://docs.oracle.com/javase/tutorial/uiswing/layout/border.html

考虑其他布局以获得所需的尺寸。 例如。 flowLayout:http://docs.oracle.com/javase/tutorial/uiswing/layout/flow.html