2016-04-09 40 views
0

我是一個剛剛開始學習的編程Swing我必須做一個簡單的船管理我需要20個左右的按鈕。我正在使用每個按鈕的setVisible()方法,我只是想知道是否還有另一種方法。Swing Java如何製作多個按鈕可以完成不同的任務點擊

button.addActionListener(new ActionListener() 
      { 
      public void actionPerformed(ActionEvent e) { 
       button.setVisible(false); 
       button1.setVisible(false); 


       button2.setVisible(true); 
       button3.setVisible(true); 
      } 
     }); 
+0

我們應該回答標題中的問題,還是回答您在問題中的疑問?他們似乎沒有任何共同之處? –

+0

我的意思是,如果我按下按鈕,它會去不同的按鈕,例如。按鈕:按這裏添加小船。然後它將名稱的船隻添加到您的列表等。 –

回答

0

只需添加其他新的ActionListener(){....}每個按鈕和修改的actionPerformed(ActionEvent的五)方法相應

0

你可以只落實在行動上監聽器類,如:

public class XYZ implements ActionListener 

然後將其添加到您的按鈕,如:

b1.addActionListener(this); 
b2.addActionListener(this); 
... 

然後覆蓋actionPer形成方法:

public void actionPerformed(ActionEvent e) { 
    //Here do your tasks. 
    // To identify the button, use : e.getSource(); 
} 
1

如果我理解你的問題,你可以定義兩個實用的方法,如

static void setVisible(JButton... btns) { 
    for (JButton btn : btns) { 
     btn.setVisible(true); 
    } 
} 
static void setInvisible(JButton... btns) { 
    for (JButton btn : btns) { 
     btn.setVisible(false); 
    } 
} 

然後,你可以調用這些與任意數量的按鈕;像

setInvisible(button, button1); 
setVisible(button2, button3); 

作爲使不同的按鈕做不同的事情,限定每一個按鈕ActionListener(或每獨特的動作)。

+0

是啊這就是我要找的感謝兄弟:D –

相關問題