Java-如何自动生成输入字段?

Java-如何自动生成输入字段?,java,input,field,dynamically-generated,Java,Input,Field,Dynamically Generated,我一直在努力,尝试,但失败了很长一段时间了。我需要生成额外的输入字段。在我的SQL数据库中,我得到了两个表,其中一个表表示需要生成多少额外字段以及类型(对于初学者来说,只需输入字段)。还有另一个表格,我从中获取数据写入这些字段。所以我将所有这些数据作为JSON字符串,并将它们转换为字符串。现在我将所有这些数据作为字符串,并根据这些数据生成y类型的x字段(在本例中为输入字段) 正如代码现在一样,它只生成一个输入字段。我只是不知道如何连接信息和字段的创建:( 这是我的代码: JSONObject j

我一直在努力,尝试,但失败了很长一段时间了。我需要生成额外的输入字段。在我的SQL数据库中,我得到了两个表,其中一个表表示需要生成多少额外字段以及类型(对于初学者来说,只需输入字段)。还有另一个表格,我从中获取数据写入这些字段。所以我将所有这些数据作为JSON字符串,并将它们转换为字符串。现在我将所有这些数据作为字符串,并根据这些数据生成y类型的x字段(在本例中为输入字段)

正如代码现在一样,它只生成一个输入字段。我只是不知道如何连接信息和字段的创建:(

这是我的代码:

JSONObject jsonObjectZusatz = new JSONObject(ZusatzString); 
int ZusatzJSONlength = jsonObjectZusatz.length();
for(int key1 = 0; key1 < ZusatzJSONlength; key1++){
  JSONObject jsonObjectZusatzObjekt0 = jsonObjectZusatz.getJSONObject(String.valueOf(key1));  
  String ZusatzNameJSON = jsonObjectZusatzObjekt0.getString("name");  // String auslesen!!!
  String ZusatzTypJSON = jsonObjectZusatzObjekt0.getString("typ");  // String auslesen!!!
  String ZusatzEintragJSON = jsonObjectZusatzObjekt0.getString("eintrag");  // String auslesen!!!

  JTextField ZFtextField = new JTextField();
  ZFtextField.setBounds(118, 260, 136, 20);
  contentPane2.add(ZFtextField);
  ZFtextField.setColumns(10);

  JLabel lblNewLabel = new JLabel("Stuff:");
  lblNewLabel.setFont(new Font("Tahoma", Font.PLAIN, 15));
  lblNewLabel.setBounds(12, 263, 46, 14);
  contentPane2.add(lblNewLabel);
JSONObject jsonObjectZusatz=新的JSONObject(ZusatzString);
int ZusatzJSONlength=jsonObjectZusatz.length();
for(int key1=0;key1

提前感谢您

在您给出的部分for循环中,JTextField和相应的标签似乎都被创建了在循环的每次迭代中都不会递增,所有标签和文本字段都是重叠的。这就是为什么您只能看到一个


要解决这个问题,当您给出对象的(x,y)位置时,而不是(value1,value2),您应该放置(value1+key1*xGap,value2+key1*yGap)。这里是循环索引,它将告诉您应该将元素移动多远。

是的,我知道,我只是静态地将其放置在这里,但问题是我不知道如何使用给定的数据生成它:/当您给出(x,y)位置时,而不是(value1,value2),您应该放置(value1+key1*xGap,value2+key1*yGap)。这里是循环索引,它将告诉您应该将元素移动多远。当然,但主要问题是如何动态命名元素?因为我认为我不能有两个同名的输入字段。您的名称应该位于
String ZusatzNameJSON=jsonObjectZusatzObjekt0.getString(“名称”)
为什么不直接使用它呢?如果我这样做:if(ZusatzTypJSON.equals(“input”){JTextField ZusatzNameJSON=new JTextField();ZFtextField.setBounds(118,xValue,136,20);contentPane2.add(ZFtextField);ZFtextField.setColumns(10);}它会给我错误。对不起,我不知道如何在注释中格式化它