TrayIcon wir beim Ausführen der .jar nicht angezeigt

JimK

Bekanntes Mitglied
;(Hi,

es tut mir leid, dass ich euch wegen so einem Ding beanspruchen muss, aber es will einfach nicht funktionieren. Habe schon überall geschaut und einiges ausprobiert, aber wenn ich meine .jar starte, mein Programm minimieren und es in den Tray geht, dann wird mein Icon nicht angezeigt. ;(
Ich weiß einfach nicht woran es liegt. Kann mir bitte jemand helfen?

Java:
URL link = ChangeDat2.class.getResource("changedat.png");
			    Image image = Toolkit.getDefaultToolkit().getImage(link);
			
			    tray = SystemTray.getSystemTray();

Danke!!!

LG
JimK
 
???:L was heißt nicht richtig angezeigt. Mit deinem Beispiel kann man nicht viel anfangen. Stimmen vllt die Seitenverhältnisse deines Bildes nicht? Ein KSKB und/oder Screenshot könnten helfen.
 
Ganz doofe Frage: Rufst du auch sowas in der Art auf?

Java:
trayIcon = new TrayIcon(image, "Tooltip");
			trayIcon.setImageAutoSize(true);
			
			try {
				tray.add(trayIcon);
			} catch(Exception ex) {
				ex.printStackTrace();
			}
 
Also wenn ich meinen Quellcode mit Eclipse starte, dann funktioniert alles prima, aber wenn ich dann alles als .jar exportiere, das Programm starte und minimiere, dann wird der Tray aufgerufen, aber ohne Bild. Der scheint das Bild nicht zu finden bzw. den Pfad. 🙁
 
versuchs mal mit (schuß ins Blaue):
Java:
ChangeDat2.class.getResource("/changedat.png"); // <-- man beachte den / am Anfang des Pfades

Ansonsten: hast du das Bild mit exportiert? Wo liegt das Bild? Ist es in der Jar oder extern?
 
Ich habe es mal mit eingefügt, aber es ist immernoch das selbe Problem.
Das gleiche Ding ist mir schon mal bei Icons für Button passiert, aber ich weiß nicht mehr, wie ich das da gelöst hatte. 🙁
Ich vermute mal, dass mein Programm als .jar das Icon nicht findet und ich weiß nicht warum.
 
jar ist nichts anderes als ein zip-Archiv. Schau mal nach, ob darin das Bild an der benötigten Stelle existiert:
ohne den [c]/[/c] muss sich das Bild relativ zum Packages deiner Aufrunden klasse befinden. Kurz: im Ordner von ChangeDat2
 
Jetzt stellt euch vor. Man sitzt seit Stunden und such und such und dann liegt es daran, dass das Bild nicht in der .jar war. Oh man...😱
Ich danke euch.

LG
 

Zurück
Oben