actionPerformed mit mehren Aktionen

con0815

Aktives Mitglied
Hey ho,

gibt es eine Möglichkeit wie der Titel schon sagt eine Möglichkeit mehrere Aktionen in ein actionPerformed Action Event zu tun.

Java:
public void actionPerformed(ActionEvent evt) {
		
		if (evt.getActionCommand().equals("kche"))
			
		firPanel.setVisible(false);
		secPanel.setVisible(true);
		thiPanel.setVisible(false);
		fouPanel.setVisible(false);
		
		repaint();

		if (evt.getActionCommand().equals("bath"))
			
		firPanel.setVisible(true);
		secPanel.setVisible(false);
		thiPanel.setVisible(false);
		fouPanel.setVisible(false);

repaint();
		if (evt.getActionCommand().equals("sleep"))
			
		firPanel.setVisible(false);
		secPanel.setVisible(false);
		thiPanel.setVisible(true);
		fouPanel.setVisible(false);
}

Funktioniert nicht, ich weiß das ich zwei stück durch ein if...... else machen kann, aber mehr als zwei funktionieren irgendwie nicht.
Weiß da wer was?
 
Naja, ich habe es doch ganz anders gemacht! Ich werde ein Beispiel hier rein stellen, damit man den Ansatz sieht und andere evtl. auch die gleiche Lösung benutzen können, wenn sie denn so ein Problem haben!

Java:
bspBtn.addActionListener( new ActionListener(){  
			@Override
			public void actionPerformed(ActionEvent arg0) {
				// TODO Auto-generated method stub
				
				firstPanel.setVisible(false);
				secPanel.setVisible(true);
				thiPanel.setVisible(false);
				fouPanel.setVisible(false);
	      }

				
	    });

So sieht die Deklaration von den ActionListener auf Buttons aus!

und jeden Button so ändern, dann kann man das ganz einfach lösen!🙂
 
Wenn du da keine Klammern hinter das if machst, dann bezieht sich das nur auf die nächste Anweisung.
Hättest du da einfach Klammern eingebaut, dann hätte es auch einwandfrei funktioniert.
 
Hmm, würde jetzt auf Anhieb sagen das habe ich probiert!
Aber wenn du sagst das hätte auch funktioniert, dann werde ich dir glauben!
 

Zurück
Oben