Überprüfen ob eine Methode ausgeführt wurde

Hallo Leute,

ich wollte wissen ob man mit einer einfachen if Überprüfung überprüfen kann ob eine Methode ausgeführt wurde.
Ich möchte das mein swing Thread auf hört zu laufen wenn ich die methode exit von meinem Frame ausführe. Btw. In dem if befehl soll dann drin stehen timer.stop da dank dem timer der swing thread weiter läuft.

Fals code für diese frage benötigt wird kann ich welchen posten.
 
B

bygones

Gast
wuerd ich ueber eine Listener struktur machen oder eine andere Form der Benachrichtigung (variable zb). D.h. derjenige der ausfuehrt sendet die Nachricht an den Timer, nicht der Timer fraegt ab ob etwas passiert ist.
 
Mein swing Thread in dem der timer aktivirt wird.

Java:
Thread worker = new Thread() {
				public void run() {
					
					javax.swing.Timer t = new javax.swing.Timer( 1, new ActionListener() {
						  public void actionPerformed( ActionEvent e ) {

					SwingUtilities.invokeLater(new Runnable() {
						
						
						public void run() {
							System.out.println("Der Swing Thread läuft noch");
							if(frame.getName().equals(a.getBesucherliste())) {
							}
							
							else {
								frame.setName(a.getBesucherliste());
								endLabel.setText(frame.getName());
								frame.validate();
								frame.update(frame.getGraphics());
							
						
								
						};

					}
					}
					
				);
					
			};
					});		
					t.start();

					
}

und hier meine Klasse frame mit einem ansatz zur lösung des Problems

Java:
import java.awt.Cursor;
import java.awt.Point;
import java.awt.Toolkit;
import java.awt.event.ActionEvent;
import java.awt.event.KeyEvent;



import javax.swing.AbstractAction;
import javax.swing.ImageIcon;
import javax.swing.JComponent;
import javax.swing.JFrame;
import javax.swing.KeyStroke;



public class Frame extends JFrame {



	
	private boolean aus;
	private String name;

	
	public Frame() {
		
		setSize(Toolkit.getDefaultToolkit().getScreenSize());
		setUndecorated(true);
		
		
		Cursor c = getToolkit().createCustomCursor(
				new ImageIcon("").getImage(), new Point(0, 0), "Cursor");
		setCursor(c);
		exit();
	}
		
		public void exit() {
		AbstractAction action = new AbstractAction() {

			@Override
			public void actionPerformed(ActionEvent arg0) {
				dispose();
				setAus(true);
			}
		};

		getRootPane().registerKeyboardAction(action,
				KeyStroke.getKeyStroke((char) KeyEvent.VK_ESCAPE, 0),
				JComponent.WHEN_IN_FOCUSED_WINDOW);
	}
	
	public void setName(String qname) {
		name = qname;
	}
	
	public String getName() {
		return name;
	}

	public boolean getAus() {
		return aus;
	}

	public void setAus(boolean aus) {
		this.aus = aus;
	}

	

}

edit vieleicht ein wenig unsauber programmiert :D
 

pl4gu33

Top Contributor
wo genau erzeugst du denn den Thread bzw. den Frame?

weil du könntest dem Frame im Konstruktor ein Objekt des Threads mitgeben und dann dort Canceln wenn Exited.
 
Ich erzeuge Thread Frame und alles andere in einer klasse namens Controller

hier der ganze code der Klasse (mit lösungs ansatz)
Java:
import java.awt.event.ActionEvent;
import java.awt.event.ActionListener;

import javax.swing.JLabel;
import javax.swing.SwingUtilities;


	public class Controler  {
		
		private static Parser parser;
		private static Frame frame;
		private static Praesentation p;
		private static JLabel endLabel;
		private static  Mythread a;
		
		public static void main(String[] args) throws Exception {
			parser = new Parser();
			frame = new Frame();
			p = new Praesentation();
			endLabel = new JLabel();
			a = new Mythread();
			
			
			frame.setName(parser.getNamen());
			frame.getContentPane().add(endLabel);
			endLabel.setText(frame.getName());
			frame.validate();
			frame.update(frame.getGraphics());
			p.vollbild(frame);
			
			Thread worker = new Thread() {
				public void run() {
					
					javax.swing.Timer t = new javax.swing.Timer( 1, new ActionListener() {
						  public void actionPerformed( ActionEvent e ) {

					SwingUtilities.invokeLater(new Runnable() {
						
						
						public void run() {
//							System.out.println("Der Swing Thread läuft noch");
							if(frame.getName().equals(a.getBesucherliste())) {
							}
							
							else {
								frame.setName(a.getBesucherliste());
								endLabel.setText(frame.getName());
								frame.validate();
								frame.update(frame.getGraphics());
							
						
								
						};

					}
					}
					
				);
					
			};
					});		
					t.start();
					if(frame.getAus() == true){
						System.out.println(frame.getAus());
					}
					
}
			};
			a.start();
			worker.start();
		}
	}
 

pl4gu33

Top Contributor
okay das mit dem ganzen Static sieht komisch aus aber okay ... zu deinem Problem

du könntest dir im Frame ein Attribut erzeugen z.b. private Thread timer;
nach dem du in der Main den Worker erzeugt hast setzt du per SetMethode im Frame diesen auf das Attribut und zack schon hast du in deinem Frame den Timer den du dort benutzen kannst

oder halt den ganzen Thread auslagern in eine eigene Klasse und dann dem Frame übergeben
 
habe es jetzt leicher gelöst

Im frame die variable aus = fals gesetzt und im Thread eine while schleife eingebaut solange aus = false ist läuft sie. Ich glaube der Code ist selbst erklärend

Frame
Java:
public void exit() {
		AbstractAction action = new AbstractAction() {

			@Override
			public void actionPerformed(ActionEvent arg0) {
				dispose();
				setAus(true);
			}
		};

Thread nur das was ich geändert habe
Java:
					t.start();
					while(frame.getAus() == false){
					if(frame.getAus() == true){
						t.stop();
					}
					}
 
Ähnliche Java Themen
  Titel Forum Antworten Datum
berserkerdq2 Überprüfen ob eine Schreibberechtigung auf ein file exisitert bzw. ob man dieses file löschen kann, wie? Java Basics - Anfänger-Themen 9
A Überprüfen, ober eine Zahl Ziffer enthält Java Basics - Anfänger-Themen 12
J Überprüfen, ob eine 2D Matrix ein Baum ist Java Basics - Anfänger-Themen 5
J Überprüfen ob String eine Zahl ist Java Basics - Anfänger-Themen 2
M Überprüfen ob die eingaben in einem JTextField eine Zahl ist Java Basics - Anfänger-Themen 5
J Überprüfen ob ein Fenster offen ist? Java Basics - Anfänger-Themen 8
Naxon89 Threads Android AysncTask => Überprüfen, ob ein Ergebniss schon vorliegt Java Basics - Anfänger-Themen 5
H Überprüfen ob String Array leer ist Java Basics - Anfänger-Themen 4
C Überprüfen eines Programms auf Syntaxfehler Java Basics - Anfänger-Themen 3
CptK Überprüfen ob übergebenes Objekt zu Generics passt Java Basics - Anfänger-Themen 2
G Überprüfen ob alle Ziffern von 1-9 in einem Integer vorhanden sind Java Basics - Anfänger-Themen 6
C Überprüfen eines Queltextes auf Syntax-Fehler und Laufzeitfehler Java Basics - Anfänger-Themen 2
K Überprüfen ob Eingabe ein Float ist Java Basics - Anfänger-Themen 4
P Überprüfen ob Mausklick auf Linie ist? Java Basics - Anfänger-Themen 6
J Methoden Überprüfen ob Objekt bereits erstellt wurde Java Basics - Anfänger-Themen 2
T Überprüfen, ob Objekt gelöscht wurde Java Basics - Anfänger-Themen 1
G String Elemente auf Zahlen Überprüfen Java Basics - Anfänger-Themen 21
C Überprüfen auf Palindrom Java Basics - Anfänger-Themen 12
B Überprüfen von Strings schlägt fehl Java Basics - Anfänger-Themen 5
S Arbeiten mit einer CSV Datei und Überprüfen von einem Datum in einem Textfeldern Java Basics - Anfänger-Themen 4
C Überprüfen, ob Timer läuft Java Basics - Anfänger-Themen 3
C Problem mit Überprüfen einer Eingabe Java Basics - Anfänger-Themen 5
S Überprüfen auf Permutation Java Basics - Anfänger-Themen 4
K Überprüfen ob Datei vorhanden Java Basics - Anfänger-Themen 2
G Überprüfen ob einen Array einen Value enthält Java Basics - Anfänger-Themen 13
P Überprüfen, ob String Zeichenfolge enthält Java Basics - Anfänger-Themen 4
T Überprüfen, ob Array Elemente hat Java Basics - Anfänger-Themen 22
I Überprüfen eines Passwortes Java Basics - Anfänger-Themen 5
J Überprüfen ob Leerzeile im String[][] array Java Basics - Anfänger-Themen 2
N Überprüfen ob ein Label angeklickt wurde Java Basics - Anfänger-Themen 3
P Methode zum Überprüfen ob Datei verwendet wird? Java Basics - Anfänger-Themen 3
G Überprüfen wann ein Dokument abläuft? Java Basics - Anfänger-Themen 3
C Überprüfen, ob die eingabe auch buchstaben enthält Java Basics - Anfänger-Themen 6
G Überprüfen ob es ein Link existiert Java Basics - Anfänger-Themen 3
S Überprüfen, ob Tabelle existiert Java Basics - Anfänger-Themen 5
H Überprüfen ob Request mit enctype=multipart/form-data Java Basics - Anfänger-Themen 2
Kerstininer Vererbung Hilfe beim lernen von Objektorientierung für eine Klausur Java Basics - Anfänger-Themen 10
K Warum wird hier nur etwas in eine txt Datei geschrieben und nicht in alle drei (InputStream/OutputStream/Reader/Writer) Java Basics - Anfänger-Themen 1
I In unterschiedlichen Applikation Zugriff auf eine gemeinsame Anwendung? Java Basics - Anfänger-Themen 8
D 2 ArrayListen gleich sortieren bzw. eine Liste anhand einer anderen Sortieren Java Basics - Anfänger-Themen 6
T Ich brauche eine Schleife die eine beliebige Zahl so lange durch 10 teilt bis zur Null Java Basics - Anfänger-Themen 5
S Java: Wie sortiere ich eine ArrayList benutzerdefinierter Objekte nach einem bestimmten Attribut? Java Basics - Anfänger-Themen 2
J Eine konzeptionelle Frage zu OOP Java Basics - Anfänger-Themen 3
N Ich kriege ganze zeit die Fehlermeldung "Inhalt der Zwischenablage kann nicht in die ausgewählten Elemente eingefügt werden" hat jemand eine Lösung? Java Basics - Anfänger-Themen 6
M Vergleichen, ob eine Liste länger als andere ist Java Basics - Anfänger-Themen 6
T Methode soll etwas ausrechnen und zurückgeben (klappt nd) hat wer eine Idee? Java Basics - Anfänger-Themen 11
Shadowrunner Variablen Gibt es eine Möglichkeit die Ziffern/Stellen einer Zahl fest zu legen? Java Basics - Anfänger-Themen 3
Kingdako Wie löse ich eine Mathematische Formel mit Arrays und Schleifen? Java Basics - Anfänger-Themen 32
M Datentypen While-Schleife eine Java Methode erstellen Java Basics - Anfänger-Themen 3
G Wie wartet man bis ein URL eine Antwort zurückgibt? Java Basics - Anfänger-Themen 5
berserkerdq2 Intelij, wie kann ich einstellen, dass die aktuelle Klasse ausgeführt wird, wenn ich aufs Startsymbol drücke, gibts da eine Tastenkombination? Java Basics - Anfänger-Themen 11
S 2 Reihen ratio-btn, eine Reihe funktioniert andere nicht Java Basics - Anfänger-Themen 4
T Eingabe durch eine Zahl dividieren nachgucken? Java Basics - Anfänger-Themen 4
M mit Maven eine ausführbare Jar bauen Java Basics - Anfänger-Themen 7
P Java Selenium . Parameterized.Parameters erzeugt eine Fehlermeldung Java Basics - Anfänger-Themen 14
J Zugriff auf eine 2. Klasse die per UI-Designer erstellt wurde Java Basics - Anfänger-Themen 1
M Eine Funktion zuweisen Java Basics - Anfänger-Themen 3
J Eine theoretische Frage zur Praxis - JPanel oder Canvas Java Basics - Anfänger-Themen 5
A Methoden Guten Tag , ich wollte so machen dass wenn meine frog an eine fly/bee geht dann an meine Tafel geht der zahl +1 hoch. Java Basics - Anfänger-Themen 2
A Wie führe ich eine Batch-Datei von meiner Java-Anwendung aus? Java Basics - Anfänger-Themen 18
J Beim Start des Programms zB. eine Linie in JPanel ausgeben Java Basics - Anfänger-Themen 4
L Methoden Eine Methode um zu testen ob es ein Nachbar gibt Java Basics - Anfänger-Themen 10
S Eine Idee umsetzen ganz schnell!? Java Basics - Anfänger-Themen 68
I Grundsatzfrage: Belegt eine Referenz auf 'null' RAM, und wenn ja - wieviel ;-) ? Java Basics - Anfänger-Themen 5
jeff98 Wie kann man in Java eine Zeichenformation ausgeben? Java Basics - Anfänger-Themen 9
K loop pausieren für eine bestimmte Anzahl? Java Basics - Anfänger-Themen 1
_user_q Wie eine Methode/Funktion aus einer Klasse mit Constructor aufrufen? Java Basics - Anfänger-Themen 20
Thomas06 Wie kann man mithilfe von boolean herausfinden ob eine zahl durch 5 und 7 teilbart ist ? Java Basics - Anfänger-Themen 7
M Prüfen on eine Zahl im String enthalten ist Java Basics - Anfänger-Themen 3
U jUnit 5 Test für eine addMethode Java Basics - Anfänger-Themen 18
frager2345 Singleton-Muster Java ->Nur eine Instanz einer Klasse erzeugen können Java Basics - Anfänger-Themen 45
A Eclipse IDE - Wie bekomme ich eine ältere Version Java Basics - Anfänger-Themen 6
F Wie kann ich eine Funktion schreiben, die nur in bestimmten Fällen einen Wert zurückgibt? Java Basics - Anfänger-Themen 5
berserkerdq2 Warum muss man manchmal in der RUnmethode sleep in eine schleife tun? Java Basics - Anfänger-Themen 9
berserkerdq2 Findet eine parallele Verarbeitung in Java bei Threads erst statt, wenn man die Methoden auch synchronized? Und wie sieht bei Conditions aus? Java Basics - Anfänger-Themen 8
berserkerdq2 Wozu benötigt man den BiPredicate, kann ich nicht einfach eine normale Methode nutzen, statt BiPredicate? Java Basics - Anfänger-Themen 3
berserkerdq2 Habe eine Klasse, welche public ist, diese hat eine public Methode, die nicht static ist. Wenn ich nun versuche aufzurufen Probleme? Java Basics - Anfänger-Themen 8
berserkerdq2 Zwei Klassen Erben von der Klasse A, die eine Klasse kann ich an Methoden übergeben, die als Parameter A haben, die andere nicht? Java Basics - Anfänger-Themen 3
berserkerdq2 Sende eine Nachricht an den Client und leere den Ausgabestorm, was ist damit genau gemeint? Java Basics - Anfänger-Themen 3
S Eine Variable in einem Array speichern Java Basics - Anfänger-Themen 5
sserio Prüfen, ob eine Zahl eine periodische Zahl ist Java Basics - Anfänger-Themen 20
L Anpassung der Spaltenbreite auch auf eine zweite Tabelle anwenden Java Basics - Anfänger-Themen 8
NadimArazi Wie kann ich eine collision detection für die Paddles in meinem Pong Programm hinzufügen? Java Basics - Anfänger-Themen 4
JordenJost Java ist auch eine Insel für Anfänger Java Basics - Anfänger-Themen 2
berserkerdq2 Warum soll ich shuffle nutzen, um bei Rückgabewert Collection eine Liste zurückzugeben? Java Basics - Anfänger-Themen 3
berserkerdq2 Ich gebe eine ArrayList als List zurück per MEthode, wie kann ich nun aber die ArrayList speichern? Java Basics - Anfänger-Themen 46
sserio Java Fx, wie erstellt man einen EventHandler, der durch das Drücken eines Button Texte in eine Table view einfügt Java Basics - Anfänger-Themen 17
M Eine Methode die erkennt ob die ein gegebene zahl größer oder kleiner sein muss Java Basics - Anfänger-Themen 2
Avalon Warum funktioniert eine Bedingung und eine andere nicht? Java Basics - Anfänger-Themen 2
F Suche nach betreuender Person für eine Jahresarbeit der 12. Klasse. Java Basics - Anfänger-Themen 6
X Hilfe beim Übertragen in eine For-Schleife Java Basics - Anfänger-Themen 1
H Eine Methode über Actionlistener beenden Java Basics - Anfänger-Themen 8
A Wenn eine Zahl durch 7 teilbar ist, soll statt der Zahl ein ‘*‘ angezeigt werden. java? Java Basics - Anfänger-Themen 47
U Warum gibt das eine Nullpointerexception? (Switch) Java Basics - Anfänger-Themen 6
U Warum kriege ich hier eine nullpointer exception, sehe den Fehler nicht (swing) Java Basics - Anfänger-Themen 1
K Warum gibt mir z. B. 40^128 eine Zahl? Ich dachte mit xor kann man nur booleanwerte erhalten, also prüfen ob etwas whar oder falsch ist? Java Basics - Anfänger-Themen 1
M Wie lassen sich Objektkonstanten initialisieren, wenn sie eine Bedingung erreichen? Java Basics - Anfänger-Themen 6
K Präzedenregeln in Java sagen, dass +expr und -expr vor + von Addition und - von Addition stehen, warum wird dann z. B. a+b als eine Addition ausgeführ Java Basics - Anfänger-Themen 7
M Wie schreibe ich eine if-Verzweigung um, so dass ein Bedingungsoperator benutzt wird? Java Basics - Anfänger-Themen 9
M Wie kann eine Methode für ein vorhandenes "Array von char" einen Index-Wert zurückliefern? Java Basics - Anfänger-Themen 3

Ähnliche Java Themen

Neue Themen


Oben