Hallo Zusammen,
ich möchte mit dem Klick auf einen Button (siehe Codebeispiel) die Methode "Nachricht" aus der Klasse "Show" aufrufen. Die Klasse habe ich in eine separate Datei gepackt. Das Ganze möchte ich machen um meine Programme etwas zu strukturieren. Ich möchte z.B. einen Arduino ansteuern.
Jedoch wenn ich den button1 drücke kommt beim Aufruf der Klasse folgende Fehlermeldung:
Was mache ich falsch? Bitte umHilfe!
Danke Quax
ich möchte mit dem Klick auf einen Button (siehe Codebeispiel) die Methode "Nachricht" aus der Klasse "Show" aufrufen. Die Klasse habe ich in eine separate Datei gepackt. Das Ganze möchte ich machen um meine Programme etwas zu strukturieren. Ich möchte z.B. einen Arduino ansteuern.
Jedoch wenn ich den button1 drücke kommt beim Aufruf der Klasse folgende Fehlermeldung:
In der angemerkten Zeile 36 sollte die Methode "Nachricht" aus der Klasse "zeige" aufgerufen werden.Exception in thread "AWT-EventQueue-0" java.lang.NullPointerException
at listen01.Listener_1.actionPerformed(Listener_1.java:36)
Was mache ich falsch? Bitte umHilfe!
Danke Quax
Java:
package listen01;
import java.awt.event.ActionEvent;
import java.awt.event.ActionListener;
import javax.swing.JButton;
import javax.swing.JFrame;
import javax.swing.JPanel;
public class Listener_1 extends JFrame implements ActionListener{
// Deklarationen
private JButton button1;
private JPanel panel;
public Show zeige;
// Konstruktor
public Listener_1() {
this.setTitle("Button Test");
this.setSize(200, 200);
panel = new JPanel();
// Button erstellen
button1 = new JButton("Verbinde");
// Button dem Listener zuordnen
button1.addActionListener(this);
// Button dem Panel hinzufügen
panel.add(button1);
// panel dem JFrame hinzufügen
this.add(panel);
}
public void actionPerformed(ActionEvent ae) {
if(ae.getSource() == this.button1)
System.out.println("Button gedrückt");
zeige.Nachricht();
}
public static void main(String[] args) {
Listener_1 frame = new Listener_1();
frame.setVisible(true);
}
}
Java:
package listen01;
public class Show {
// Konstruktor
public Show(){
/* ... leer ... */
}
public void Nachricht() {
System.out.println("Methode Nachricht aufgerufen");
}
}
Zuletzt bearbeitet: