2015-03-13 132 views
0

我试图在每个循环中做一些按钮,但我无法弄清楚它的正确性。 它甚至工作吗?有没有办法在foreach循环中创建一个数组中的对象

 String[] myButtons = {"Label","Checkbox","CheckboxGroup", "Textfield", "TextArea","Choice", "List", "Scrollbar", "ScrolPane", "Ende"}; 

    for (String buttonName : myButtons) { 
     Button buttonName = new Button(buttonName); 
    } 
+1

您需要更清楚地说明您正在尝试做什么以及出现问题。 – Radiodef 2015-03-13 17:59:08

+0

您可以通过调用'.add()'方法将按钮添加到'JPanel'或'JFrame'。 – 2015-03-13 18:07:58

回答

1

当然,如果你不尝试重用buttonName,那么你就可以编译和创建一些按钮:

for (String buttonName : myButtons) { 
    Button button = new Button(buttonName); // right here! 
} 

但是你没有做与他们任何事情。也许你想将它们添加到框架?

for (String buttonName : myButtons) { 
    Button button = new Button(buttonName); 
    frame.add(button); 
} 

你确定你不想使用JButton

+0

谢谢!是的,我确定:) – Mike 2015-03-13 18:10:12

+0

没问题!很高兴我能帮上忙。 – 2015-03-13 18:13:30

2

它看起来像你正在重新创建Button对象,每次通过。当您还需要实例化一个实际的Button对象列表时,您只有一个String名称列表。试试这个:

String[] buttonNames = {"One", "Two", "Three", "Four", "Five"}; 
Button[] buttons = new Button[buttonNames.length]; 
for (int i = 0; i < buttons.length; i++) { 
    buttons[i] = new Button(buttonNames[i]); 
} 

根据您的按钮对象是什么,你还可以包括内部的匿名函数用于将结合创建一个事件侦听器每个按钮循环。

+0

谢谢你的提示! – Mike 2015-03-13 18:20:34

相关问题