java动态添加更多的文本框,例如按一个按钮,就新增一个文本框
时间: 2024-05-01 07:19:53 浏览: 8
可以使用Java Swing来实现动态添加文本框的功能。以下是一个简单的示例代码:
```java
import javax.swing.*;
import java.awt.*;
import java.awt.event.ActionEvent;
import java.awt.event.ActionListener;
public class DynamicTextFields extends JFrame implements ActionListener {
private JButton addButton;
private JPanel panel;
private int count = 0;
public DynamicTextFields() {
super("Dynamic Text Fields");
setDefaultCloseOperation(JFrame.EXIT_ON_CLOSE);
panel = new JPanel();
panel.setLayout(new BoxLayout(panel, BoxLayout.Y_AXIS));
addButton = new JButton("Add Text Field");
addButton.addActionListener(this);
panel.add(addButton);
add(panel);
pack();
setLocationRelativeTo(null);
setVisible(true);
}
@Override
public void actionPerformed(ActionEvent e) {
if (e.getSource() == addButton) {
count++;
JTextField textField = new JTextField(20);
panel.add(textField);
panel.revalidate();
panel.repaint();
pack();
}
}
public static void main(String[] args) {
DynamicTextFields dynamicTextFields = new DynamicTextFields();
}
}
```
这个示例程序创建了一个带有一个按钮的窗口,每次点击按钮就会在窗口中添加一个新的文本框。要实现这个功能,我们需要使用`BoxLayout`来布局,使用`JPanel`来作为容器,并且在`ActionListener`中添加新的文本框。注意,添加新的组件后需要调用`revalidate()`和`repaint()`方法来刷新窗口。