2015-03-13 154 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

相關問題