Java 如何获取动态创建的文本字段的值
请任何人帮我把这个密码写出来。我正在处理一个需要动态创建文本字段的项目,虽然我能够创建文本字段,但无法获得需要存储在数组中的用户输入。这是我使用的代码Java 如何获取动态创建的文本字段的值,java,arrays,swing,arraylist,Java,Arrays,Swing,Arraylist,请任何人帮我把这个密码写出来。我正在处理一个需要动态创建文本字段的项目,虽然我能够创建文本字段,但无法获得需要存储在数组中的用户输入。这是我使用的代码 Public void actionPerformed(ActionEvent e){ String value = textField.getText(); int values = Integer.parseInt(value); int sum = 10; for(int I=0; I < values; I+
Public void actionPerformed(ActionEvent e){
String value = textField.getText();
int values = Integer.parseInt(value);
int sum = 10;
for(int I=0; I < values; I++){
TextField field = new TextField();
field.setBound(10,sum,107,22);
Panel.add(field);
sum += 28;
}
}
});
Public void actionPerformed(ActionEvent e){
字符串值=textField.getText();
int values=Integer.parseInt(值);
整数和=10;
对于(int I=0;I
但是我无法编写任何成功的代码来获取文本字段的值。您的问题是访问引用——这意味着,一旦创建了对象,您就无法在需要时获得对它的适当引用。解决方案是使用集合(如
ArrayList
)作为类的字段,然后将创建的对象放入该集合中。之后,如果您需要它们,您可以很容易地从集合中获取它们
一些附带建议:
- 为什么AWT组件不摆动?换句话说,使用
并用JTextFields而不是TextFields填充它ArrayList
- 避免
和setBounds(…)
布局,因为这会导致非常不灵活的GUI,虽然它们在一个平台上看起来不错,但在大多数其他平台或屏幕分辨率上看起来很糟糕,并且很难更新和维护null
- 避免使用“魔法”数字,如此处的硬编码数字:
field.setBound(10,sum,107,22)代码>
- 改用布局管理器
- 你会想要学习和使用。变量名都应该以小写字母开头,而类名应该以大写字母开头。学习这一点并遵循这一点可以让我们更好地理解您的代码,也可以让您更好地理解其他人的代码
ArrayList
)作为类的字段,然后将创建的对象放入该集合中。之后,如果您需要它们,您可以很容易地从集合中获取它们
一些附带建议:
- 为什么AWT组件不摆动?换句话说,使用
并用JTextFields而不是TextFields填充它ArrayList
- 避免
和setBounds(…)
布局,因为这会导致非常不灵活的GUI,虽然它们在一个平台上看起来不错,但在大多数其他平台或屏幕分辨率上看起来很糟糕,并且很难更新和维护null
- 避免使用“魔法”数字,如此处的硬编码数字:
field.setBound(10,sum,107,22)代码>
- 改用布局管理器
- 你会想要学习和使用。变量名都应该以小写字母开头,而类名应该以大写字母开头。学习这一点并遵循这一点可以让我们更好地理解您的代码,也可以让您更好地理解其他人的代码