Hi zusammen,
folgendes Problem: ich habe eine Klasse, in der ich alle ActionEvents in einen Controller auslagern möchte. Bislang sieht das bei mir so aus:
Die View-Klasse:
Die Controller-Klasse:
Ich habe nun eine weitere Methode eingebaut, die ich mit einem Button aufrufen will. Leider ruft er sie IMMER auf, wenn ich einen der anderen Buttons anklicke.
Hier die Methode für erfasserSpeichern:
folgendes Problem: ich habe eine Klasse, in der ich alle ActionEvents in einen Controller auslagern möchte. Bislang sieht das bei mir so aus:
Die View-Klasse:
Java:
public void actionPerformed(ActionEvent e) {
// TODO Auto-generated method stub
e.getActionCommand();
new StartTabModel().buttonController(buttonStimmeErfassen, buttonProjekteLaden, buttonDBimport, buttonErfasserSpeichern, e);
}
Die Controller-Klasse:
Java:
public void buttonController(JButton buttonStimmeErfassen, JButton buttonProjekteLaden, JButton buttonDBimport, JButton buttonErfasserSpeichern, ActionEvent e) {
if (e.getSource().equals(buttonStimmeErfassen)) {
new TabController().tabWechseln(1,e);
} else if (e.getSource().equals(buttonProjekteLaden)){
new TabController().tabWechseln(2,e);
} else if (e.getSource().equals(buttonDBimport)){
new TabController().tabWechseln(3,e);
} else if(e.getSource().equals(buttonErfasserSpeichern)); {
new StartTabModel().erfasserSpeichern(StartTab.textfeldErfasser,buttonErfasserSpeichern,e,frame);
}
}
Ich habe nun eine weitere Methode eingebaut, die ich mit einem Button aufrufen will. Leider ruft er sie IMMER auf, wenn ich einen der anderen Buttons anklicke.
Hier die Methode für erfasserSpeichern:
Java:
public void erfasserSpeichern(JTextField j, JButton b, ActionEvent a, JInternalFrame frame) {
if (j.isEditable() == true) {
a.getActionCommand();
j.setEditable(false);
b.setText("Logout");
// j.ladeDaten(j.getText());
if (j.getText().equals("S119")) {
JOptionPane.showMessageDialog(frame, "Bitte geben Sie einen gültigen Namen ein.");
j.setEditable(true);
b.setText("Login");
} else
JOptionPane.showMessageDialog(frame, "Sie haben sich erfolgreich eingeloggt.");
} else if (j.isEditable() == false) {
a.getActionCommand();
j.setEditable(true);
b.setText("Login");
JOptionPane.showMessageDialog(frame, "Sie haben sich erfolgreich ausgeloggt.");
j.setText("S119");
}