如何在Java中获得这样的布局?
| ---------------------------------------------- - |
|固定尺寸"顶部"带标签的面板
| ---------------------------------------------- |
|可调整大小的文本区域
|它扩展到大多数父母
|面板(固定区域除外)
|
| ---------------------------------------------- |
|修复了JTextArea(总是2行
|全帧宽度)
| ---------------------------------------------- |
| RightCenteredButtons
| ---------------------------------------------- |
我尝试了下面的代码,但我无法让它工作。元素是浮动的,文本区域是冲突的。我无法弄清楚如何将文本区域扩展到除固定区域之外的所有可用框架。
JPanel top = new JPanel(new FlowLayout(FlowLayout.LEFT , 10, 10));
top.add(label1);
....
top.add(labelLast);
add(top);
JTextArea area1 = new JTextArea();
add(area1);
JTextArea area2 = new JTextArea();
add(area2);
JPanel bottom= new JPanel(new FlowLayout(FlowLayout.RIGHT , 10, 10));
bottom.add(button1);
....
bottom.add(buttonLast);
add(bottom);
答案 0 :(得分:4)
在主面板上使用BorderLayout
。
PAGE_START
。然后设置面板的布局并将组件添加到面板。CENTER
PAGE_END
阅读How to Use BorderLayout上Swing教程中的部分,了解更多信息和工作示例。
修复了JTextArea(总是2行全帧宽度)
当您创建JTextArea时,您使用:
JTextArea textArea = new JTextArea(2, 20);
指定固定行数。