Event Handler

Status
Nicht offen für weitere Antworten.
G

Guest

Gast
Hallo,

den Code unten habe ich so angepasst, dass ich meine Frage möglichst einfach stellen kann. Es ich kein originaler Code.

Ich habe eine Software von der ich nur die *.class-Dateien und nicht die Quellen besitze. Mit Hilfe von JADclipse habe ich eine Klasse dieser Software dekompiliert. Die dekompilierte Klasse sieht so aus:

Code:
public class Testklasse
{
	public Testklasse()
	{
		JFrame frame = new JFrame();  	  
		JButton button = new JButton("Testbutton"); 
		
		frame.add(button);  
		frame.pack();
		frame.setVisible( true );
	}
	
	public static void main(String[] args)
	{
		new Testklasse();
	}
}

Ich würde die Anwendung nun gerne dahingehend erweitern, dass nach dem Betätigen des Buttons "Testbutton" auf diese Ereignis reagiert wird. Meine Erweiterung soll so aussehen:

Code:
public class Behandlung implements ActionListener
{
	public void actionPerformed(ActionEvent e)
	{
		System.out.println("Button wurde betätigt");
	}
}

Nun muß ich meine actonPerformed-Methode aber irgendwie an dem Button so registrieren:

Code:
button.addActionListener(new Behandlung());

Das Problem ist allerdings, dass ich an die Quellen der Klasse "Testklasse" ja nicht rankomme und somit auch keine Änderung an diesen vornehmen kann. Ist es irgendwie anders möglich meine actionPerformed-Methode am Button anzumelden, ohne das ich die Quellen (die ich ja nicht habe) modifizieren muß?
 
G

Guest

Gast
Mal angenommen die main von Testklasse würde nicht gestartet werden... ginge es dann?
 
B

Beni

Gast
Irgendwo wird IMHO eine Liste aller offenen Frames und Dialoge gespeichert, wenn du die findest, könntest du den Componenten-Baum durchhangeln bis du auf den JButton triffst.

Edit: siehe Frame.getFrames
 
G

Guest

Gast
Irgendwo wird IMHO eine Liste aller offenen Frames und Dialoge gespeichert, wenn du die findest, könntest du den Componenten-Baum durchhangeln bis du auf den JButton triffst.

Mal angenommen ich würde den Button wirklich auf diese Weise finden... wohin müßte ich dann die Zeile

Code:
button.addActionListener(this);

schreiben? Wenn ich sie in meinen eigenen Code schreibe, dann bringt das doch eigentlich nichts, da dieser ja dann erstmal aufgerufen werden müßte. Erst nach dem Aufruf wäre meine actionPerformed-Methode beim Button als Listener angemeldet. Aufrufen kann ich meinen eigenen Code nicht, da ich dies ja aus den Klassen tun müßte von denen ich die Quellen nicht habe.

Beispiel:

Code:
public class Behandlung implements ActionListener
{
   // der Aufruf des Konstruktors müßte aus den Klassen geschehen von denen ich keine Quellen habe ==> nicht möglich
   public void Behandlung()
   {
       // button so besorgen wie du es erklärt hast

       // die folgende Zeile bringt nichts, da sie ja nie aufgerufen wird
       button.addActionListener(this);
   }

   public void actionPerformed(ActionEvent e)
   {
       System.out.println("Button wurde betätigt");
   }
}
 

Wildcard

Top Contributor
Anonymous hat gesagt.:
Aufrufen kann ich meinen eigenen Code nicht, da ich dies ja aus den Klassen tun müßte von denen ich die Quellen nicht habe.
Was soll die Frage überhaupt wenn du gar keine Möglichkeit hast eigenen Code aufzurufen? Was nützt dir der tollste ActionListener wenn du ihn nicht anhängen kannst?
 
G

Guest

Gast
... hätte ja sein können, das es dafür eine Lösungsvariante gibt.
 
Status
Nicht offen für weitere Antworten.
Ähnliche Java Themen
  Titel Forum Antworten Datum
Fiedelbambu fxml onAction event Java Basics - Anfänger-Themen 7
T FXMl Event has not a Slot Java Basics - Anfänger-Themen 1
E Methoden Action Event wird nicht vollständig ausgeführt Java Basics - Anfänger-Themen 3
Tommy135 Event erstellen Java Basics - Anfänger-Themen 7
CptK Methoden Event bei gedrückter Maustaste immer wieder ausführen Java Basics - Anfänger-Themen 1
CptK Klassen Event bei gedrückter Maus immer wieder mit Pause ausführen Java Basics - Anfänger-Themen 2
topi WindowAdapter / Listener / Event Java Basics - Anfänger-Themen 4
L Event schmeißen Java Basics - Anfänger-Themen 1
F In Eclipse Haltepunkt bei Event setzen? Java Basics - Anfänger-Themen 1
T Übungsaufgabe Event Handling Java Basics - Anfänger-Themen 0
M Action Event auf Textfield legen Java Basics - Anfänger-Themen 18
V Button/Event wird nicht ausgeführt, was tun? Java Basics - Anfänger-Themen 2
J Keyboard Event auch ohne Fokus mitbekommen Java Basics - Anfänger-Themen 2
D Java Eclipse cannot be cast to java.awt.event.ItemListener Java Basics - Anfänger-Themen 3
IngoF Welches Event kommt wann? Java Basics - Anfänger-Themen 8
A Key Event - Abfrage von 2 gedrückten Tasten Java Basics - Anfänger-Themen 6
E Event gesucht Java Basics - Anfänger-Themen 1
G Button Event Java Basics - Anfänger-Themen 6
Thallius Hidden Feature über Key Event starten Java Basics - Anfänger-Themen 4
A Labels Inner JButton Event Erstellbar? Java Basics - Anfänger-Themen 3
F Erste Schritte Aktuelles Fenster durch Event schließen Java Basics - Anfänger-Themen 3
D Button action Event einblenden/ausblenden Java Basics - Anfänger-Themen 6
U Threadsafe Event-Handling Java Basics - Anfänger-Themen 2
C Klassen NullPointerException beim Event Handling in GUI Java Basics - Anfänger-Themen 8
P ActionListener Action Event Java Basics - Anfänger-Themen 5
J Erste Schritte import awt.* ;awt.event.*; Java Basics - Anfänger-Themen 3
T event und while-schleife Java Basics - Anfänger-Themen 26
L Null Pointer Exception bei Focus Event bei einem JTextField Java Basics - Anfänger-Themen 2
M Während event einen anderen event ausführen?? Java Basics - Anfänger-Themen 3
S Event aus anderer Klasse als Auslöser Java Basics - Anfänger-Themen 5
M Event erstellen Java Basics - Anfänger-Themen 6
B OOP Eigener Event-Listener erstellen Java Basics - Anfänger-Themen 4
D Eigenes Event beim TimeOut Java Basics - Anfänger-Themen 2
D Auf Event warten Java Basics - Anfänger-Themen 4
I AWS Event Notification Service Sample ausführen... Java Basics - Anfänger-Themen 7
M JList Event Java Basics - Anfänger-Themen 5
Houly while Schleife im ActionPerformed Event Java Basics - Anfänger-Themen 8
R eigenen Event schreiben Java Basics - Anfänger-Themen 16
S Kein Event bei Click auf JComboBox Java Basics - Anfänger-Themen 4
N paint methode statt Event-Handling-Methode Java Basics - Anfänger-Themen 3
Q Eigenes Event feuern Java Basics - Anfänger-Themen 5
H2SO3- dreieck, bild --> maus klick event. Wie gehts? Java Basics - Anfänger-Themen 10
R Event in eigener Klasse implementieren ? Java Basics - Anfänger-Themen 8
B Applet: Event-Handling-Methode in start- bzw. paint-Methode Java Basics - Anfänger-Themen 7
D Window resize Event ? Java Basics - Anfänger-Themen 5
D Bei Event soll Instanz sich selbst löschen Java Basics - Anfänger-Themen 4
D Event mit n-Button8s) von einem Panel Java Basics - Anfänger-Themen 9
GilbertGrape Eigenes Event? Java Basics - Anfänger-Themen 2
A Synchronisierung oder gibt es das onChange event? Java Basics - Anfänger-Themen 4
J Automatisch Button drücken/Event ausführen? Java Basics - Anfänger-Themen 6
G Button Action Event starten Java Basics - Anfänger-Themen 4
G Methode nicht im Event-Dispatcher-Thread starten? Java Basics - Anfänger-Themen 2
F Doppelklick-Event auf JTree Java Basics - Anfänger-Themen 5
A Wo/Wie Event Listener Java Basics - Anfänger-Themen 3
N Event auf JTabbedPane abfragen ? Java Basics - Anfänger-Themen 8
T button event Java Basics - Anfänger-Themen 3
P Raw-Key-Event Java Basics - Anfänger-Themen 4
Q ActionListener event bei JPanels Java Basics - Anfänger-Themen 5
J Event-Handling geht nicht Java Basics - Anfänger-Themen 6
G Button event problem Java Basics - Anfänger-Themen 24
B Eigenes Event schreiben Java Basics - Anfänger-Themen 7
D MouseLister und Identifikation des Event - Buttons Java Basics - Anfänger-Themen 4
G start-oder paint-Methode anstatt Event-Handling-Methode? Java Basics - Anfänger-Themen 3
T java.awt.event.WindowAdapter Java Basics - Anfänger-Themen 2
B Event-Actionlistener(Def) Java Basics - Anfänger-Themen 6
G GUI Event Handling Java Basics - Anfänger-Themen 5
M Event auslösen (unsinnig gestellt - ignorieren) Java Basics - Anfänger-Themen 4
M [SOLVED]Swing Event Management Java Basics - Anfänger-Themen 7
N Runtime.exec und Key event Java Basics - Anfänger-Themen 2
C Klasse muss auf Event in einer anderen Klasse reagieren Java Basics - Anfänger-Themen 7
G JTable - Event - MVC Java Basics - Anfänger-Themen 10
J Event-Hilfe Java Basics - Anfänger-Themen 4
T Event zu bestimmter Uhrzeit auslösen ? Java Basics - Anfänger-Themen 5
S MausKlickZähler - Event Problem Java Basics - Anfänger-Themen 2
M Kommunikation zwischen GUI und Event -Klasse Java Basics - Anfänger-Themen 3
C mouseDown (Event e, int x, int y) rechts oder linksklick ? Java Basics - Anfänger-Themen 10
D if (event.target instanceof TextField) Java Basics - Anfänger-Themen 2
M Wie kann ich bei int-Variablen im exception handler auf bestimmte Strings reagieren? Java Basics - Anfänger-Themen 5
S Androdi.os.Handler Java Basics - Anfänger-Themen 4
J Delegation Handler Klasse Java Basics - Anfänger-Themen 2
C Handler aufrufen Java Basics - Anfänger-Themen 2
J Wie greife ich vonEvent-Handler auf Attribut einer Klasse zu Java Basics - Anfänger-Themen 5

Ähnliche Java Themen

Neue Themen


Oben