Banale Anfängerfrage

Status
Nicht offen für weitere Antworten.

madmix

Mitglied
Hallo Leute

Ich fange gerade erst mit Java an und habe schon das erste Problem wo ich nicht weiterkomme.
Ist bestimmt ein ganz Banales (für euch) aber ich beiss mir im Moment echt die Zähne dran aus.
Ich habe auf Basis des bisher erlernten versucht ein Kleines Script zu erstellen, welches eine Eingabe in ein Text Feld erwartet und nach Klick auf Button diesen Text in ein Label schreiben soll.
Ich habe dies in ein AWT gepackt (als kleines Fenster) und zwei EventListener geschrieben, die einmal das Fenster schließen und zum anderen die geänderte Ausgabe vornehmen sollen, also wenn der Butoon geklickt wird.
Dies soll in einem Interface (myListener) geschehen.
Bis Dato soweit ganz gut.
Das Fenster mit den Elementen wird angezeigt und beim Klick auf Button passiert etwas, nämlich, wenn ich dort label.setText("Danke"); hineinchreibe, das mir im Label dann "Danke" angezeigt wird.
Allerdings möchte ich ja Text aus dem Eingabe Feld dort anzeigen lassen.
Die wollte ich mit label.setText(eingabeFeld.getText()); realisieren, was aber leider so wie ich das machen möchte, nicht funktioniert.
Und hier ist mein Problem, ich weiß nicht welchen Fehler ich hier begehe.
Ich habe das Script zu Veranschaulichung mal mit angehängt, in der Hoffnung ihr könnt mir hier einen Tipp geben wie ich das realisieren kann.
Die Fehlermeldungen habe ich unter dem Script auch mal mit angehängt, mit dem Hinweis das ich gerade mit Java anfangen habe und diese Fehler noch nicht richtig deuten kann.

Danke im Vorraus

Java:
import java.awt.*;
import java.awt.event.*;
import java.io.*;

public class EigeneAnwendung extends Frame {
	
	// Instanzvariablen
	private Button button1;
	private Label label2,label;
	private TextField eingabeFeld;
	private String text;
	// Konstruktor
	EigeneAnwendung() {
		// Methode für Fenstertitel der Basisklasse überschreiben
		super("Eigene Anwendung");
		// Null Layout festlegen
		this.setLayout(null);
		// Label definieren
		label = new Label("Drücke den Knopf!");
		label.setBounds(65, 30, 130, 23);
		label.setForeground(Color.YELLOW);
		// Label2 definieren
		label2 = new Label("Eingabefeld : ");
		label2.setBounds(10, 58, 80, 23);
		// Eingabefeld definieren
		TextField eingabeFeld = new TextField();
		eingabeFeld.setBounds(90,60,120,20);
		eingabeFeld.setBackground(Color.orange);
		eingabeFeld.setText("Eingabe hier");
		// Button definieren
		Button button1 = new Button();
		button1.setBounds(65, 95, 100, 23);
		button1.setLabel("OK");
		// Elemente anzeigen
		this.add(label, null);
		this.add(label2, null);
		this.add(eingabeFeld, null);
		this.add(button1, null);
		// Registrieren von Button
		button1.addActionListener(new myListener());
		// Registrieren von SchließenWindow
		this.addWindowListener(new SchließenWindow());
	}
	// Interface für Buttonereignis (EventListener)
	class myListener implements ActionListener {
		public void actionPerformed(ActionEvent e) {
			// Hier ist der Fehler ???
			label.setText(eingabeFeld.getText());
		}
	}
	// Interface für Fenster schließen (LstenerAdapter)
	class SchließenWindow extends WindowAdapter {
		public void windowClosing(WindowEvent e) {
			System.exit(0);
		}
	}
	// Methode main
	public static void main(String[] args) {
		
		// Instanz für Objekt fenster setzen
		EigeneAnwendung fenster = new EigeneAnwendung();
		// Hintergrundfarbe und Fenstergröße festlegen
		fenster.setBackground(Color.LIGHT_GRAY);
		fenster.setSize(230,130);
		// Fenster anzeigen
		fenster.setVisible(true);
	}
}

Fehlermeldungen :

Exception in thread "AWT-EventQueue-0" java.lang.NullPointerException
at EigeneAnwendung$myListener.actionPerformed(EigeneAnwendung.java:48)
at java.awt.Button.processActionEvent(Button.java:392)
at java.awt.Button.processEvent(Button.java:360)
at java.awt.Component.dispatchEventImpl(Component.java:4583)
at java.awt.Component.dispatchEvent(Component.java:4413)
at java.awt.EventQueue.dispatchEvent(EventQueue.java:599)
at java.awt.EventDispatchThread.pumpOneEventForFilters(EventDispatchThread.java:269)
at java.awt.EventDispatchThread.pumpEventsForFilter(EventDispatchThread.java:184)
at java.awt.EventDispatchThread.pumpEventsForHierarchy(EventDispatchThread.java:174)
at java.awt.EventDispatchThread.pumpEvents(EventDispatchThread.java:169)
at java.awt.EventDispatchThread.pumpEvents(EventDispatchThread.java:161)
at java.awt.EventDispatchThread.run(EventDispatchThread.java:122)
 
Zuletzt bearbeitet:

Civilazi

Bekanntes Mitglied
Da ist eingabeFeld == null, weil du es im Konstruktor neu deklarierst. D.h. ändere Zeile 26 in
Java:
eingabeFeld = new TextField();
, dann sollte das klappen.
 

madmix

Mitglied
Danke für die schnelle Antwort, nu klappt es.

Aber war der Fehler wirklich so banal ?
Stimmt, ich habe das Feld neu deklariert und dadurch auf NULL gesetzt.
Es war ja bereits ausserhalb des Konstruktors als private deklariert.
Manchmal ist man wie zugenagelt, da wäre ich nie drauf gekommen.

Danke nochmals für die schnelle Hilfe
 

Civilazi

Bekanntes Mitglied
Du hast einfach im Scope des Konstruktors ein TextField eingeführt, das genauso heißt wie die Membervariable. Das ist an sich noch nix schlimmes, du kannst auf das äußere TextField dann mit this.eingabeFeld zugreifen. Aber das war ja nicht was du machen wolltest :)
 
Status
Nicht offen für weitere Antworten.
Ähnliche Java Themen
  Titel Forum Antworten Datum
G Banale Frage: While Schleife mit Bedingungsprüfung am Ende Java Basics - Anfänger-Themen 2
D Anfängerfrage zu meinem Programm. Java Basics - Anfänger-Themen 15
V Anfängerfrage: HelloWorld läuft nicht Java Basics - Anfänger-Themen 3
F if else if anfängerfrage Java Basics - Anfänger-Themen 22
P Anfängerfrage, Primitiv,komplex Java Basics - Anfänger-Themen 1
pkm Erste Schritte Anfängerfrage zu ::new Java Basics - Anfänger-Themen 4
A Anfängerfrage Java Basics - Anfänger-Themen 7
M Erstellung Interfaces....totale Anfängerfrage Java Basics - Anfänger-Themen 16
W DNS Name auslesen + weitere Anfängerfrage Java Basics - Anfänger-Themen 4
R Anfängerfrage zu Methoden in Vererbte Klassen Java Basics - Anfänger-Themen 2
F Erste Schritte (Gelöst) Anfängerfrage Arraylist ausserhalb der Main Methode Java Basics - Anfänger-Themen 2
DeVolt Anfängerfrage zu util.scanner Java Basics - Anfänger-Themen 2
T Anfängerfrage zu Schleifen und Arrays Java Basics - Anfänger-Themen 5
B Collections ArrayList füllen - Anfängerfrage Java Basics - Anfänger-Themen 1
Shams Anfängerfrage zu jnlp Java Basics - Anfänger-Themen 0
T Kleine Anfängerfrage :) Java Basics - Anfänger-Themen 4
I Anfängerfrage JPanel repaint() Java Basics - Anfänger-Themen 6
F Anfängerfrage zu extends Java Basics - Anfänger-Themen 12
A Anfängerfrage: Zahlformat prüfen Java Basics - Anfänger-Themen 4
I Anfängerfrage: Fehlersuche Java Basics - Anfänger-Themen 2
A Methoden Anfängerfrage: 2 Listen Vergleichen Java Basics - Anfänger-Themen 7
L Anfängerfrage zu TileMap Java Basics - Anfänger-Themen 4
J anfängerfrage Java Basics - Anfänger-Themen 10
J Anfängerfrage HelloWorld? cmd-Problem Java Basics - Anfänger-Themen 35
J Anfängerfrage zu Grundlagen von Packages Java Basics - Anfänger-Themen 7
J Anfängerfrage zur Variablen Java Basics - Anfänger-Themen 11
J Anfängerfrage :-) Java Basics - Anfänger-Themen 5
Y Anfängerfrage zu array(-Syntax) Java Basics - Anfänger-Themen 6
J Leichte Java Anfängerfrage. Bitte schnelle Antwort. :) Java Basics - Anfänger-Themen 10
U Anfängerfrage - Multithreading Java Basics - Anfänger-Themen 8
T Aufrufen von get-Methode aus anderer Klasse (absolute Anfängerfrage) Java Basics - Anfänger-Themen 2
G Anfängerfrage zu "@Override" Java Basics - Anfänger-Themen 5
N Anfängerfrage richtige Syntax und Frage zu Vector Java Basics - Anfänger-Themen 7
A Anfängerfrage - array required, but java.lang.String found Java Basics - Anfänger-Themen 7
M Kleine Anfängerfrage Java Basics - Anfänger-Themen 10
S Anfängerfrage zu Array Java Basics - Anfänger-Themen 8
K Anfängerfrage: Fehlermeldung Java Basics - Anfänger-Themen 6
D Anfängerfrage N. Office Access NOA: setHidden und dann . Java Basics - Anfänger-Themen 2
N Anfängerfrage Java Basics - Anfänger-Themen 14
N anfängerfrage. returnwerte Java Basics - Anfänger-Themen 3
Gama Importieren von Klassen [Anfängerfrage] Java Basics - Anfänger-Themen 3
G Anfängerfrage Java Basics - Anfänger-Themen 11
B Anfängerfrage zu Swing "Reload" Java Basics - Anfänger-Themen 2
N Anfängerfrage bezüglich Speicherverwaltung Java Basics - Anfänger-Themen 3
G Anfängerfrage zu Threads Java Basics - Anfänger-Themen 14
Q Anfängerfrage Java Basics - Anfänger-Themen 6
J Anfängerfrage: wie externe Dateien importieren? Java Basics - Anfänger-Themen 5
S Anfängerfrage Java Basics - Anfänger-Themen 7
G Anfängerfrage zu Vererbung Java Basics - Anfänger-Themen 6
B Anfängerfrage zu 'NoClassDefFoundError' Java Basics - Anfänger-Themen 2
J IO Frage Hex-Output - Anfängerfrage Java Basics - Anfänger-Themen 5
T Anfängerfrage -> Projekt Java Basics - Anfänger-Themen 2
C Anfängerfrage ->Objekte und Arrays Java Basics - Anfänger-Themen 4
V Anfängerfrage Java Basics - Anfänger-Themen 8
E RMI Anfängerfrage Java Basics - Anfänger-Themen 10
DEvent anfängerfrage: wieso layout erst beim verändern? Java Basics - Anfänger-Themen 6
G Anfängerfrage Java Basics - Anfänger-Themen 2

Ähnliche Java Themen

Neue Themen


Oben