Définition de l'image d'icône d'application par défaut dans Java swing sous OS X


J'essaie de définir l'image d'icône pour un fichier Jar:

setIconImage(new ImageIcon(getClass().getResource("logo.png")).getImage());

Lors de l'exécution sous Mac OS X 10.7.4, j'obtiens l'erreur suivante:

Jun 28 15:21:40 (my dhcp) java[73383] <Error>: CGContextGetCTM: invalid context 0x0
Jun 28 15:21:40 (my dhcp) java[73383] <Error>: CGContextSetBaseCTM: invalid context 0x0
Jun 28 15:21:40 (my dhcp) java[73383] <Error>: CGContextGetCTM: invalid context 0x0
Jun 28 15:21:40 (my dhcp) java[73383] <Error>: CGContextSetBaseCTM: invalid context 0x0
Jun 28 15:21:40 (my dhcp) java[73383] <Error>: CGContextGetCTM: invalid context 0x0
Jun 28 15:21:40 (my dhcp) java[73383] <Error>: CGContextSetBaseCTM: invalid context 0x0
Author: xav, 0000-00-00

1 answers

setIconImage ne définissez pas le pot de l'icône. Il définira l'icône pour ce à quoi ressemblera la fenêtre minimisée pour cela JFrame. L'icône jar (qui contrôle l'icône du finder et l'icône de l'application dock) ne peut pas être définie dans le fichier jar lui-même. Vous obtenez juste l'icône par défaut fournie par le système d'exploitation. Vous devrez l'envelopper en utilisant quelque chose comme JarBundler pour OS X

 26
Author: ,