java frame添加文本框,使文本框上下排列但是紧挨着
时间: 2023-08-22 21:04:26 浏览: 98
文本框与下拉框的结合
4星 · 用户满意度95%
您可以使用BoxLayout布局管理器来实现这样的布局。通过设置BoxLayout的方向为Y_AXIS,可以将组件沿着垂直方向排列。同时,通过设置组件的最小和最大大小为同样的值,可以将它们紧挨在一起。下面是一个示例代码:
```java
import javax.swing.Box;
import javax.swing.BoxLayout;
import javax.swing.JFrame;
import javax.swing.JPanel;
import javax.swing.JTextField;
public class TextFieldsExample {
public static void main(String[] args) {
// 创建一个 JFrame 对象
JFrame frame = new JFrame("文本框示例");
// 创建一个 JPanel 对象,并将其设置为使用 BoxLayout 布局
JPanel panel = new JPanel();
panel.setLayout(new BoxLayout(panel, BoxLayout.Y_AXIS));
// 创建两个文本框对象,并将它们添加到 JPanel 中
JTextField textField1 = new JTextField("文本框 1");
JTextField textField2 = new JTextField("文本框 2");
panel.add(textField1);
panel.add(Box.createVerticalStrut(10)); // 添加一个垂直的空白区域
panel.add(textField2);
// 将 JPanel 添加到 JFrame 中,并设置其可见性和大小
frame.add(panel);
frame.setSize(300, 200);
frame.setVisible(true);
}
}
```
在上面的代码中,我们首先创建了一个 JFrame 对象,并将其标题设置为“文本框示例”。然后,我们创建了一个 JPanel 对象,并将其布局管理器设置为 BoxLayout,并将方向设置为 Y_AXIS。接下来,我们创建了两个 JTextField 对象,并将它们添加到 JPanel 中。在第一个文本框后,我们使用了 Box.createVerticalStrut() 方法添加了一个垂直的空白区域,这样可以将两个文本框紧挨在一起。最后,我们将 JPanel 添加到 JFrame 中,并设置其可见性和大小。运行该程序后,我们将得到一个文本框上下排列但是紧挨着的布局。
阅读全文