我正在为基本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);
}
抱歉我的英语不好。 谢谢你提前。
答案 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