字符串作为JLabel名称

时间:2015-06-30 11:03:12

标签: java string swing

我正在迭代一个ArrayList,并且我想要创建新的JLabel。 JLable名称应该是我列表中的值。

ArrayList<String> fieldsList = new ArrayList<String>();

for (int numberOfFields = 0; numberOfFields <= fieldsList.size(); numberOfFields++) {

        String fieldName = fieldsList.get(numberOfFields);

        JLabel "value from list"= new JLabel(fieldName + ":"); //here, in "" the name of JLabel should be the same as fieldName

    }

对此有一个简单的解决方案,但我找不到它

2 个答案:

答案 0 :(得分:1)

你不能这样做。另一种方法是创建jlabel列表

ArrayList<String> fieldsList = new ArrayList<String>();

JLabel[] lablearr=new JLabel[fieldsList.size()]; //lable array

for (int numberOfFields = 0; numberOfFields < fieldsList.size(); numberOfFields++) {

        String fieldName = fieldsList.get(numberOfFields);

        lablearr[numberOfFields]= new JLabel(fieldName + ":"); 

 }

现在,如果您想调用特定的jlabel,可以使用

  lablearr[i]

例如,如果你想调用一个名为mylable:的jlable,那么你循环遍历arraylist - fieldsList并找到&my; mylable&#39;的索引。并通过该索引调用jlable。

答案 1 :(得分:0)

我就这样做了:

for (String fieldName : fieldsList) {
        {
            {
                JLabel lbl = new JLabel(fieldName + ":");
                lbl.setBounds(33, counter, 130, 14);
                getContentPane().add(lbl);
            }
            counter += 25;
        }
    }

它对我有用