Moin Moin
erst mal zum Problem:
ich habe eine Klasse welche eine Gui erzeugt, wenn ich dort auf nen button klicke, wird ein Objekt einer anderen Klasse erstellt. Im Konstruktor der Klasse wird per funktion ein TrayIcon erstellt und nachher ein Thread gestartet. Wenn ich direkt hinter dem Thread oder direkt hinter dem erstellen des Objektes (durch den Button) eine Ausgabe mache, erscheint die auch, trotzdem wird die Gui nicht aktuallisiert und auch das Popup Menü vom Tray Icon lässt sich nicht öffnen.
der Threadabschnitt sieht so aus:
wobei ich sagen muss, dass ich so noch nie mit Threads gearbeitet habe sondern sons die Threads in einer eigenen Klasse hatte. Nur ist es halt so ers mal einfacher, da das Projekt nicht all zu riesig wird (übersicht is also gegeben) und sons müsste ich ja irgendwie aus der Threadklasse raus die Funktion der aufrufenden klasse aufrufen das würde irgendwie komplex werden mit den parametern (zumindest fällt mir auf die schnelle nix ein).
Und irgendwie läuft es ja auch parallel. Ausgaben die danach kommen werden ja noch angezeigt nur wird die Gui irgendwie gesperrt und das tray icon lässt sich nicht anklicken.
ich hoffe ihr wisst hilfe
Grüße
Martin
erst mal zum Problem:
ich habe eine Klasse welche eine Gui erzeugt, wenn ich dort auf nen button klicke, wird ein Objekt einer anderen Klasse erstellt. Im Konstruktor der Klasse wird per funktion ein TrayIcon erstellt und nachher ein Thread gestartet. Wenn ich direkt hinter dem Thread oder direkt hinter dem erstellen des Objektes (durch den Button) eine Ausgabe mache, erscheint die auch, trotzdem wird die Gui nicht aktuallisiert und auch das Popup Menü vom Tray Icon lässt sich nicht öffnen.
der Threadabschnitt sieht so aus:
Java:
Runnable runner = new Runnable()
{
public void run()
{
try
{
while(true)
{
Thread.sleep(15000);
System.out.println("hallo welt ich bin der check thread");
check_mail();
}
} catch (Exception e)
{
System.out.println(e);
}
}
};
EventQueue.invokeLater(runner);
wobei ich sagen muss, dass ich so noch nie mit Threads gearbeitet habe sondern sons die Threads in einer eigenen Klasse hatte. Nur ist es halt so ers mal einfacher, da das Projekt nicht all zu riesig wird (übersicht is also gegeben) und sons müsste ich ja irgendwie aus der Threadklasse raus die Funktion der aufrufenden klasse aufrufen das würde irgendwie komplex werden mit den parametern (zumindest fällt mir auf die schnelle nix ein).
Und irgendwie läuft es ja auch parallel. Ausgaben die danach kommen werden ja noch angezeigt nur wird die Gui irgendwie gesperrt und das tray icon lässt sich nicht anklicken.
ich hoffe ihr wisst hilfe
Grüße
Martin