2016-04-09 7 views
0

Ich bin ein Studium Programmierung wir haben gerade angefangen Swing Ich muss eine einfache Boot-Management machen Ich brauche etwa 20 Tasten. Ich benutze die setVisible() Methode für jede Taste Ich frage mich nur, ob es eine andere Möglichkeit, das zu tun.Swing Java, wie man mehrere Tasten macht Das macht verschiedene Aufgaben auf Click

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


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

Sollten wir auf die Frage im Titel antworten, oder zu Ihrer Frage in der Frage? Sie scheinen nichts gemeinsam zu haben? –

+0

Ich meine, wenn ich einen Knopf drücke, wird es zu verschiedenen Tasten zB gehen. Button: Drücken Sie hier, um Boote hinzuzufügen. und dann geht es zu Name der Boote, die sie zu deiner Liste usw. hinzufügen. –

Antwort

0

Fügen Sie einfach wieder eine neue Action() {....} jede Taste und ändern Sie die actionPerformed (Action e) Methode entsprechend

0

Sie können nur die Aktion Hörer in der Klasse wie implementieren:

public class XYZ implements ActionListener 

Dann fügen sie sie Tasten wie:

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

dann die actionPer außer Kraft setzen gebildet Methode:

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

Wenn ich Ihre Frage verstehen, könnten Sie zwei Hilfsmethoden definieren wie

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

Dann könnte man die mit einer beliebigen Anzahl von Tasten rufen; wie

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

Wie für verschiedene Tasten verschiedene Dinge tun zu machen, eine ActionListener pro Button (oder pro einmalige Aktion) definieren.

+0

Ja das ist, was ich gesucht habe, danke dude: D –

Verwandte Themen