Fenster schließen soll Button kontakt auslösen.

Status
Nicht offen für weitere Antworten.

alaska94

Aktives Mitglied
Hallo Folks.

ich arbeite gerade mit AWT und Java.
Ich möchte, dass wenn der Benutzer das X drückt um das AWT-Fenster zu schließen, java so tut, als wenn ich einen Button gedrückt habe. Ist das möglich ein Buttonevent auszulösen, ohne den Button zu betätigen?

Wenn ja wie.


Gruß

Alaska
 

FenchelT

Bekanntes Mitglied
Hallo,

DEin Button ist doch an einem ActionListener angemeldet?!
Der actionListener ruft eine Methode auf.

Die gleiche Methode rufst Du auch, wenn das Fenster geschlossen wird.
Du benoetigst dann nur noch einen Listener der auf das GUI schliessen reagiert.
 

alaska94

Aktives Mitglied
FenchelT hat gesagt.:
Hallo,

DEin Button ist doch an einem ActionListener angemeldet?!
Der actionListener ruft eine Methode auf.

Die gleiche Methode rufst Du auch, wenn das Fenster geschlossen wird.
Du benoetigst dann nur noch einen Listener der auf das GUI schliessen reagiert.

Mhm kannste mir vielleicht mal kurz den Codeschnipsel hier reinpacken.
Also den WindowListener habe ich bereits.

Code:
this.object.actionPerformed(//Was muss ich hier übergeben?);
 

Nick0110

Mitglied
Wenn du ein Buttonevent auslösen möchtest ohne ihn zu betätigen, reicht eine einfache doclick anweisung.
Das ganze an einem Beispiel:
Code:
JButton close = new JButton("close");
close.addActionListener(this);
//...
//close ist in dem Fall der Button der gedrückt werden soll, wenn du dein JFrame schließt
// Als nächstest übergibst du der Methode die dein JFrame schließt noch folgende Anweisung:

close.doClick();
Grüße
 
G

Guest

Gast
Nick0110 hat gesagt.:
Wenn du ein Buttonevent auslösen möchtest ohne ihn zu betätigen, reicht eine einfache doclick anweisung.
Das ganze an einem Beispiel:
Code:
JButton close = new JButton("close");
close.addActionListener(this);
//...
//close ist in dem Fall der Button der gedrückt werden soll, wenn du dein JFrame schließt
// Als nächstest übergibst du der Methode die dein JFrame schließt noch folgende Anweisung:

close.doClick();
Grüße

Hallo,

das Problem ist ich habe keinen JButton. Ich darf nur AWT benutzen, und daher habe ich die Methode doClick() nicht.
Gibt es in AWT auch eine Möglichkeit?


Gruß

Alaska
 

chilla

Mitglied
also wie schon weiter oben erwähnt musst du die methode die hinter dem button steckt aufrufen:
aber weil du die funktionalität des buttons wahrscheinlich direkt in die actionPerformed-Methode gepackt hast, wirst du um eitwas umstrukturierung nicht herumkommen:

Code:
Button button=new Button();
button.addActionListener(new ActionListener(){


//diese methode wird automatisch beim klicken ausgeführt
public void actionPerformed(ActionEvent e){

//darin wird jetzt die methode mit der geschäftslogik //aufgerufen:
doSomething();

}

});
Diese Methode kommt dann in die gleiche Klasse:
Code:
public viod doSomething(){
//do something
}
 

FenchelT

Bekanntes Mitglied
alaska94 hat gesagt.:
FenchelT hat gesagt.:
Hallo,

DEin Button ist doch an einem ActionListener angemeldet?!
Der actionListener ruft eine Methode auf.

Die gleiche Methode rufst Du auch, wenn das Fenster geschlossen wird.
Du benoetigst dann nur noch einen Listener der auf das GUI schliessen reagiert.

Mhm kannste mir vielleicht mal kurz den Codeschnipsel hier reinpacken.
Also den WindowListener habe ich bereits.

Code:
this.object.actionPerformed(//Was muss ich hier übergeben?);

Hallo,

sorry dass ich mich erst jetzt wieder melde, war beruflich unterwegs.

Also Du hast eine Klasse nenn sie wie Du magst, bei mir heisst sie windowClosingAdapter.
Diese Klasse implementiert den WindowAdapter, der zwingend die Methode "public void windowClosing" mit dem
Parameter(WindowEvent event) erwartet.

In Code meine ich das so:
Code:
public class WindowClosingAdapter extends WindowAdapter
{
	
	
		public WindowClosingAdapter()
	    {
			// Konstrukor. Wenn Du keinen brauchst, lass ihn weg.
	    }


// Die Methode ist ein Muss!	 
	    public void windowClosing(WindowEvent event)
	    {
	    	event.getWindow().setVisible(false);
	    	event.getWindow().dispose();
	    	System.out.println("Ende gut, alles gut");
                System.exit(0);
	    }
}



Nun hast Du Deine Klasse, von der aus Du Deine windowClosingAdapater Klasse aufrufen moechtest.

Du benoetigst dazu die folgende Klassenvariable:
private WindowClosingAdapter wca;

Um auf das windowClosing zu reagieren (also wenn Du das X oben rechts klickst) meldest Du folgenden Listener im Konstruktor an:

wca = new WindowClosingAdapter();
addWindowListener(wca);

Nun moechtest Du, dass bei Button-Klick die gleiche Methode aufgerufen wird, die auch bei WindowClosing aufgerufen wird. Dazu musst Du einen ActionListener anmelden der im Stande ist, der windowClosing Methode ebenfalls ein WindowEvent zu uebergeben.

Dazu benoetigst Du noch die folgende Methode:

Code:
private Window getWindow()
{
            return (Window) this;
}


NUn noch den Button am Listener anmelden und fertig:

Code:
myProgrammBeendenButton.addActionListener(new ActionListener() {
                public void actionPerformed(ActionEvent e) {
                    wca.windowClosing(new WindowEvent(getWindow(), WindowEvent.WINDOW_CLOSING));
                }
            });

Viel Erfolg
 
Status
Nicht offen für weitere Antworten.
Ähnliche Java Themen
  Titel Forum Antworten Datum
T jOptionPane zum schließen von Fenster, wie "Ja" und "Nein" anstatt Yes und No Java Basics - Anfänger-Themen 2
JEP1 Java Dialog Fenster schließen Spiel Java Basics - Anfänger-Themen 0
X JFrame Fenster einzeln schließen Java Basics - Anfänger-Themen 2
F Erste Schritte Aktuelles Fenster durch Event schließen Java Basics - Anfänger-Themen 3
M Erste Schritte Probleme mit Fenster Schließen Java Basics - Anfänger-Themen 6
S Fenster richtig schließen Java Basics - Anfänger-Themen 8
S nur neu geöffnetes Fenster schließen Java Basics - Anfänger-Themen 3
T Windows Fenster Schließen Java Basics - Anfänger-Themen 4
J Fenster schließen? Java Basics - Anfänger-Themen 4
M Befehl zum Fenster schließen? GUI Java Basics - Anfänger-Themen 3
B Java Fenster schließen Java Basics - Anfänger-Themen 2
T Per Button Klick Fenster schließen?< Java Basics - Anfänger-Themen 7
T Problem mit Fenster schließen Java Basics - Anfänger-Themen 8
B Bei Schließen von Fenster über x Aktion ausführen Java Basics - Anfänger-Themen 6
A Classe um Fenster(classe) zu schließen? Java Basics - Anfänger-Themen 4
S Anderes Fenster schließen Java Basics - Anfänger-Themen 8
G Pop Up Fenster schließen Java Basics - Anfänger-Themen 2
J Ein Fenster korrekt schließen? Java Basics - Anfänger-Themen 4
G Fenster lässt sich nicht schließen. Java Basics - Anfänger-Themen 4
D Meine SetMethode geht nicht || Fenster schließen Java Basics - Anfänger-Themen 3
E Fenster schließen Java Basics - Anfänger-Themen 10
G Fenster schließen bei Klick auf Button Java Basics - Anfänger-Themen 4
G Java Fenster schließen Java Basics - Anfänger-Themen 5
S fenster nach button schließen Java Basics - Anfänger-Themen 2
D Fenster per Button schließen Java Basics - Anfänger-Themen 12
E Variable von 1. Fenster an 2. Fenster übergeben. Java Basics - Anfänger-Themen 7
javalux123 Keylistener auf andere Fenster Java Basics - Anfänger-Themen 3
T Java FXML selbes Fenster verschiedene Stellen im Programm Java Basics - Anfänger-Themen 5
B Scrollbares Fenster (JScrollPane) mit JPanel scrollt nicht Java Basics - Anfänger-Themen 3
J Überprüfen ob ein Fenster offen ist? Java Basics - Anfänger-Themen 8
H Eingabe tätigen bevor Graphics g Fenster öffnet Java Basics - Anfänger-Themen 5
celta_vigo Konsolen-Fenster ist weg Java Basics - Anfänger-Themen 5
Thomathy Interface Wie schließt man ein anderes JFrame Fenster? Java Basics - Anfänger-Themen 6
M PNG als Spieler im Fenster anzeigen Java Basics - Anfänger-Themen 4
S JOptionPane komplett leeres Fenster Java Basics - Anfänger-Themen 4
A Eclipse-Fenster starten statt Konsoleausgabe Java Basics - Anfänger-Themen 2
A Fenster bleibt weiß Java Basics - Anfänger-Themen 7
O Fenster programmieren Java Basics - Anfänger-Themen 2
M JavaFX: Fenster bleibt weiß Java Basics - Anfänger-Themen 3
A Fenster programmieren Java Basics - Anfänger-Themen 1
J JFrame Fenster öffnet sich nicht Java Basics - Anfänger-Themen 7
M aus Fenster anderes Fenster öffnen und wieder umgekehrt Java Basics - Anfänger-Themen 5
J Best Practice DOS Fenster mit Befehlszeile (Lösung) Java Basics - Anfänger-Themen 2
J Fenster wieder unsichtbar machen Java Basics - Anfänger-Themen 2
das_leon Gesamtes Programm in einem Fenster Java Basics - Anfänger-Themen 1
E Knopfdruck neues Fenster öffnen Java Basics - Anfänger-Themen 5
A Fenster mit Button aufrufen Java Basics - Anfänger-Themen 3
D Erste Schritte JPanel verschiebt Fenster via setVisible Java Basics - Anfänger-Themen 5
W Es wird erst gezeichnet, wenn ich das Fenster vergrößere? Java Basics - Anfänger-Themen 20
K Interface Fenster mit 3 ComboBoxen und 1 Button Java Basics - Anfänger-Themen 13
P Erste Schritte durch MenuBar verschiedene Fenster öffnen Java Basics - Anfänger-Themen 2
I Fenster A soll Fenster B schliessen Java Basics - Anfänger-Themen 5
D Java Fenster blockiert ? Java Basics - Anfänger-Themen 5
K Erste Schritte Neues Fenster mit Textinhalt öffnen Java Basics - Anfänger-Themen 6
M Code um per jButton ein neues Fenster zu öffnen Java Basics - Anfänger-Themen 3
A Popup-Fenster Java Basics - Anfänger-Themen 1
L Fenster auf Knopfdruck Java Basics - Anfänger-Themen 3
N Problem mit JOptionPane und Fenster-Fokus Java Basics - Anfänger-Themen 2
J ausgaben von der konsole in das fenster Java Basics - Anfänger-Themen 5
O Finally beim Fenster schliessen Java Basics - Anfänger-Themen 3
F Klassen Zugriff auf Fenster aus versch. Klassen Java Basics - Anfänger-Themen 5
P Eigenes Fenster erstellen Java Basics - Anfänger-Themen 5
M Input/Output Text auf Fenster zeichen Java Basics - Anfänger-Themen 2
T Zu viele Fenster - HILFE! Java Basics - Anfänger-Themen 5
J Extra Fenster (Frame) Java Basics - Anfänger-Themen 20
llabusch Fenster per Button verschieben Java Basics - Anfänger-Themen 5
llabusch Fenster um x Pixel verschieben Java Basics - Anfänger-Themen 4
P Window Builder Reiter im Fenster erstellen Java Basics - Anfänger-Themen 7
S Java Fenster Java Basics - Anfänger-Themen 2
D (zwei) Fenster mit unterschiedlicher Befüllung Java Basics - Anfänger-Themen 11
A JAVA Fenster in ein PDF Konvertieren Java Basics - Anfänger-Themen 1
A Erkennung eines Button im aktiven Fenster Java Basics - Anfänger-Themen 2
B Variable im Fenster anzeigen lassen? Java Basics - Anfänger-Themen 2
S Fenster ist zu groß Java Basics - Anfänger-Themen 8
O GUI: Eigene Fenster "Form"? Java Basics - Anfänger-Themen 13
E Fehlermeldung und Fenster wird nicht mehr angezeigt Java Basics - Anfänger-Themen 12
I Einlese Abfrage zweier Variablen in einem Fenster Java Basics - Anfänger-Themen 6
N Java Programm im CMD Fenster öffnen, wie? Java Basics - Anfänger-Themen 17
S Erste Schritte Fenster wechsel im Applet Java Basics - Anfänger-Themen 7
tuttle64 Keine Umlaute im Dos Fenster Java Basics - Anfänger-Themen 12
J Button nimmt das komplette Fenster ein?! Java Basics - Anfänger-Themen 5
M Beim Klicken auf X neues Fenster Java Basics - Anfänger-Themen 4
Athena Schlichtes Fenster mit Windowskomponenten Java Basics - Anfänger-Themen 3
H KeyListener auf ganzes Fenster setzen Java Basics - Anfänger-Themen 14
S Neues Fenster auf Knopfdruck Java Basics - Anfänger-Themen 12
J Button drücken neues Fenster?! Java Basics - Anfänger-Themen 5
A Login Fenster Java Basics - Anfänger-Themen 3
C Button - neues Fenster - Bestellung anzeigen Java Basics - Anfänger-Themen 10
Z GUI-Fenster leeren Java Basics - Anfänger-Themen 5
J ordentliche Fenster Java Basics - Anfänger-Themen 17
J Problem beim Fenster Java Basics - Anfänger-Themen 4
Z Login Fenster Java Basics - Anfänger-Themen 7
K Aus JFrame-Fenster SuM-Fenster öffnen geht nicht! Java Basics - Anfänger-Themen 8
T Client-Fenster bei Aufruf unvollständig Java Basics - Anfänger-Themen 12
O Größeres Fenster als angegeben?! Java Basics - Anfänger-Themen 2
J Eltern-Fenster ermitteln Java Basics - Anfänger-Themen 2
M Ausklappbares Fenster bei grafischem Taschenrechner Java Basics - Anfänger-Themen 2
V Fenster wird nicht mittig platziert Java Basics - Anfänger-Themen 3
P gui fenster nur einmal aufrufen Java Basics - Anfänger-Themen 5
P Im Fenster bleiben (swing) Java Basics - Anfänger-Themen 16

Ähnliche Java Themen

Neue Themen


Oben