Wert in GUI aktualisieren, Beobachter

Benji0815

Aktives Mitglied
Ich beschäfftige mich gerade mit einem Spider. Also ein Programm mit dem ich meine Webseite lokal auf meinen Rechner runterladen kann.

In dem Programm habe ich eine Queue. Ich kann mir von der Queue ausgeben lassen wieviele Elemente Sie gerade enthält.

Diese Zahl möchte ich jetzt gerne in der GUI anzeigen. Mein Problem ist, dass diese Zahl sich natürlich ständig ändert. Ich möchte in der GUI immer den aktuellen Wert anzeigen.

Ich verwende bereits SwingWorker damit die GUI nicht einfriert, aber ich weiß noch nicht wie ich es realisieren soll, dass die GUI ständig Informationen von der Queue bekommt und diese anzeigt.

Ich habe dazu zwei Begriffe im Kopf Callback und das Observer Pattern.

Kann ich mein Problem damit lösen? Über Tipps und Anregungen freue ich mich.

Gruss Benji
 

Michael...

Top Contributor
Der SwingWorker bzw. der Spider brauch einfach nur eine Referenz auf das anzeigende Objekt und kann dann jedesmal, wenn sich die Anzahl der Elemente ändert, setText() aufrufen.
 
G

Gast2

Gast
Ich beschäfftige mich gerade mit einem Spider. Also ein Programm mit dem ich meine Webseite lokal auf meinen Rechner runterladen kann.

In dem Programm habe ich eine Queue. Ich kann mir von der Queue ausgeben lassen wieviele Elemente Sie gerade enthält.

Diese Zahl möchte ich jetzt gerne in der GUI anzeigen. Mein Problem ist, dass diese Zahl sich natürlich ständig ändert. Ich möchte in der GUI immer den aktuellen Wert anzeigen.

Ich verwende bereits SwingWorker damit die GUI nicht einfriert, aber ich weiß noch nicht wie ich es realisieren soll, dass die GUI ständig Informationen von der Queue bekommt und diese anzeigt.

Ich habe dazu zwei Begriffe im Kopf Callback und das Observer Pattern.

Kann ich mein Problem damit lösen? Über Tipps und Anregungen freue ich mich.

Gruss Benji

Oder schreib dir einen Listener(Interface) und jedes mal wenn sich die Zahl ändert schmeißt du ein Event und der Beobachter(GUI) fängt das event und akutalisiert sich darauf...
 

Benji0815

Aktives Mitglied
Sieht hier jemand einen Fehler?

Java:
 worker = new SwingWorker<String, Void>(){
		 
		        @Override
		        protected String doInBackground(){
		        	test();
		        	//tf_c.setText("" + URLObject.counter);
		        	return "";
		        }
		 
		        @Override
		        protected void done(){
		        	tf_c.setText(Spider.queue + "");
		        	
		        }
				
		      };
		      // Execute the SwingWorker; the GUI will not freeze
		      worker.execute();
 
Zuletzt bearbeitet:

Benji0815

Aktives Mitglied
Hmm. Es wird immer die 0 angezeigt. Das ist der Instanziierungswert der Queue. Ich glaube ich muss einen Listener schreiben, wie SirWayne gemeint hat.
 

Michael...

Top Contributor
Ein Listener ist allgemeiner als direkt die Komponente, aber es muss in beiden Fällen eine Referenz auf ein Objekt übergeben werden.
Was steckt denn hinter Spider.queue? Und soll der Text erst aktualisiert werden, wenn der SwingWorker fertig ist?
 
J

JohannisderKaeufer

Gast
Im Swingworker gibt's die Methoden publish und process, die du dir mal genauer ansehen solltest.
 

Benji0815

Aktives Mitglied
Der Text soll regelmäßig aktualisiert werden und nicht erst, wenn der SwingWorker fertig ist. Deshalb ist die Methode done wohl nicht der richtige Ort für meine Anzeige.

Hinter Spider.queue steckt die Anzahl der Elemente in meiner Queue. Es ist eine statische Variable. Ist auch nicht so ganz optimal.
 
Ähnliche Java Themen
  Titel Forum Antworten Datum
J Wie kann man herausfinden, wo der Wert herkommt ? Allgemeine Java-Themen 13
JAnruVA Datentypen Berechneten String-Wert in Double umwandeln um weiter zu rechnen Allgemeine Java-Themen 7
T Verschachtelte For-Schleife gibt falschen Wert zurück, Abbruchbedingung evtl. falsch? Allgemeine Java-Themen 9
L 2 Dimensionale ListArray Abfrage nach einem Wert suchen Allgemeine Java-Themen 5
TheSepp Java bestimmtes Array auf den Wert 0 setzen Allgemeine Java-Themen 32
I Wie kann ich den Wert aus einer If abfrage ausgeben Allgemeine Java-Themen 23
S Wert zuweisung Allgemeine Java-Themen 1
Alex_99 Rechner: Wert zwischenspeichern und bei Bedarf mit Ihm weiterrechnen? Allgemeine Java-Themen 6
J Wo kommt der Wert der Variable her ? Allgemeine Java-Themen 6
Tiago1234 CellReference cr = new CellReference("") gibt den falschen Wert zurück Allgemeine Java-Themen 49
N Value Wert aus HTML-Button mittels thymeleaf spring an java übergeben Allgemeine Java-Themen 2
L String zu repräsentativen Wert Allgemeine Java-Themen 0
S Drools: Zählen wie oft ein Wert vorkommt Allgemeine Java-Themen 1
M Gibt es eine API die den aktuellen Wert eines Indikators beim Trading zurückgibt? Allgemeine Java-Themen 7
T Wert an laufenden Java-Prozess übergeben Allgemeine Java-Themen 10
A Variablen Funktion übergibt den Wert nicht Allgemeine Java-Themen 13
P JSpinner gibt leeren Wert zurück Allgemeine Java-Themen 5
KeexZDeveoper Nächstgelegenden Wert ermitteln Allgemeine Java-Themen 5
C Variablen Variablen mit unendlichem Wert Allgemeine Java-Themen 22
G Iteratoren - Wie kann man mithilfe von Iteratoren nur jeden zweiten Wert eines TreeSets ausgeben? Allgemeine Java-Themen 4
A Mit dem letzten bis zum ersten Wert aus Array rechnen Allgemeine Java-Themen 15
T Array - Wert am nächsten zur vollen Sekunde Allgemeine Java-Themen 20
F Wert in Variable schreiben, wenn diese gerade genutzt wird Allgemeine Java-Themen 10
G Methoden BMI -Wert Aufgabe(Methoden) Allgemeine Java-Themen 4
F Wert ändert sich nicht Allgemeine Java-Themen 12
E JavaFX String-Wert geht "verloren" - ratlos Allgemeine Java-Themen 2
A In Excel-Datei schreiben, Formeln der Mappe anwenden, Wert lesen Allgemeine Java-Themen 3
R Int Wert im Dialogfeld ändern Allgemeine Java-Themen 4
B [Android] EditText-Object ist null - Nimmt nicht den Wert des enthaltenen Textfeldes ein Allgemeine Java-Themen 2
O log4j, Problem bei Ausgabe null-Wert Allgemeine Java-Themen 0
H Bestimmten Wert aus String parsen Allgemeine Java-Themen 7
M HashMaps: Wert erweitern Allgemeine Java-Themen 3
C Object.equals() liefert falschen Wert? Allgemeine Java-Themen 14
M Parallele Programmierung: volatile Variable nimmt ungewöhnlichen Wert an Allgemeine Java-Themen 3
T Datentypen ArrayUtils.indexOf( ... ) liefert -1 obwohl Wert scheinbar enthalten ist Allgemeine Java-Themen 15
H Speziellen Wert aus String filtern Allgemeine Java-Themen 4
M JExcel Wert aus Zelle übergeben/ausgeben Allgemeine Java-Themen 2
iB0T Variable Wert ausrauchen Allgemeine Java-Themen 3
iB0T "goto" Befehl aus Batch in Java und Variablen wert immer wieder neu setzen Allgemeine Java-Themen 4
G Z Wert - 3 Dimensionaler Punkt Allgemeine Java-Themen 13
S JPA und Entity-Klassen: Wert ungültig Allgemeine Java-Themen 6
C .Ini-Datei Wert Änderungen werden nicht angenommen Allgemeine Java-Themen 3
J String mit "," in Double Wert konvertieren Allgemeine Java-Themen 7
A nur einen Wert aus einer .conf lesen und erneuern Allgemeine Java-Themen 3
I getResponseCode(); returnt einen falschen Wert? Allgemeine Java-Themen 7
N Applet Apache Poi Wert einer Formel ausgeben Allgemeine Java-Themen 5
G Input/Output Manuelle Änderung von Wert in Swing Komponente bemerken! Allgemeine Java-Themen 2
S Newton-Verfahren liefert nur 1 Wert Allgemeine Java-Themen 3
E Wert von enum zur Laufzeit festlegen. Allgemeine Java-Themen 5
E Wert in andere Klasse übernehmen Allgemeine Java-Themen 4
X this.val$WERT Was ist den das? Allgemeine Java-Themen 2
K Scanner - große Textfile, nur 0 ab betim. Wert Allgemeine Java-Themen 4
S Daten in Array als INT-Wert einlesen - jetzt als csv Datei Allgemeine Java-Themen 5
T OLE-Automation mit Excel (Wert übergabe) Allgemeine Java-Themen 1
O Hash Wert von Passwörter erstellen (SHA) Allgemeine Java-Themen 9
G Double Wert über OutputStream verschicken Allgemeine Java-Themen 2
S Methode übergibt immer den gleichen Wert Allgemeine Java-Themen 21
J Was ist schneller? Neue Variable oder neuer Wert speziell int Allgemeine Java-Themen 3
M Bit Wert umdrehen Allgemeine Java-Themen 5
J ArrayList aus Point-Objekten nach dem x-Wert ordnen Allgemeine Java-Themen 2
B Wert mit Adresse auslesen Allgemeine Java-Themen 11
S Array: Anzahl Elemente mit best. Wert zählen Allgemeine Java-Themen 4
M Ein Array-Wert soll sich verändern, aber 2 tun es? Allgemeine Java-Themen 7
S Prüfen auf Hex-Wert fester Länge! Allgemeine Java-Themen 5
G transientes Objekt mit Wert initialisieren? Allgemeine Java-Themen 7
J in einer static Variable Wert ändern Allgemeine Java-Themen 6
reibi double-Wert auf 2 Stellen nach dem Komma abschneiden Allgemeine Java-Themen 6
S CRC wert berechnen ergibt 0 ? Allgemeine Java-Themen 9
MQue Float- Wert formatieren Allgemeine Java-Themen 8
A Private-Wert eines Objekts auslesen Allgemeine Java-Themen 9
R Wert von einer Klasse in eine andere bekommen Allgemeine Java-Themen 6
J Integer Array Wert vorhanden? Allgemeine Java-Themen 6
N Wert in ArrayList ändert sich ohne wissentliches zutun Allgemeine Java-Themen 6
O System.nanoTime() einheitlichen Wert auf mehreren Rechnern? Allgemeine Java-Themen 9
H JTable Wert verändern Allgemeine Java-Themen 3
S den zweit niedrigsten wert in einem array berechnen Allgemeine Java-Themen 2
J variablen wert ändernung mit einer art actionlistener? Allgemeine Java-Themen 4
J Vector - Wert ersetzen Allgemeine Java-Themen 14
H Zugriff auf Wert einer Umgebungsvariablen Allgemeine Java-Themen 2
H JSF - Wert an ein managed bean übergeben Allgemeine Java-Themen 2
H boolean wert ändern Allgemeine Java-Themen 2
R Wert in Hashtable ändern (Key ändern, Value bleibt) Allgemeine Java-Themen 3
G Wandeln von Char Wert in Zeichen? Allgemeine Java-Themen 2
B Java Klasse muß in Terminal einen Wert zurückgeben. Allgemeine Java-Themen 3
R ascii-wert zuweisung Allgemeine Java-Themen 4
B Wert zuweisen bei deklaration? Allgemeine Java-Themen 9
C ImageIO die read-Methode liefert mir ein null- Wert zurück Allgemeine Java-Themen 10
A Float-Wert auf 2 Stellen nach den Komma runden ? Allgemeine Java-Themen 2
B Double-Wert aus einem HexString erstellen. Allgemeine Java-Themen 11
B Wie bekomme ich den Wert aus der For-Schleife? Allgemeine Java-Themen 5
L Best Practice Zip Datei aktualisieren Allgemeine Java-Themen 1
S @version in Kommentaren aktualisieren Allgemeine Java-Themen 10
G jTable aktualisieren?! Allgemeine Java-Themen 1
MiMa Metadaten in PDF scheiben/Aktualisieren Allgemeine Java-Themen 11
A Fehler beim Aktualisieren JTable Allgemeine Java-Themen 1
C Threads Variablen in einem Thread Aktualisieren Allgemeine Java-Themen 17
Q Zeit in GUI selbst aktualisieren Allgemeine Java-Themen 5
G Binärbaum aktualisieren Allgemeine Java-Themen 11
2 ArrayList aktualisieren Algorithmus Allgemeine Java-Themen 11
M Applet Oberfläche aktualisieren Allgemeine Java-Themen 5

Ähnliche Java Themen

Neue Themen


Oben