2010-03-25 12 views

Répondre

0

Non, l'API n'offre pas cette fonctionnalité. Pourquoi pensez-vous que vous en avez besoin, de toute façon Qu'essayez-vous d'accomplir?

+0

Je sais qu'il n'y a pas de fonction API pour cela, c'est pourquoi je demande un "hack". Il y a un bogue avec les icônes transparentes dans Linux: si vous placez une icône transparente dans la barre d'état système, il deviendra grisé. Je vais donc essayer de détecter la couleur du plateau système et définir la couleur de fond de l'icône sur la couleur de la barre d'état système. Exemple: http://media.ubuntuusers.de/forum/attachments/1512816/Bildschirmfoto-1.png – Hemeroc

+0

Il existe également un rapport de bogue sur ce problème: http://bugs.sun.com/view_bug.do? bug_id = 6453521 (Ce n'est pas résolu depuis 2006!) – Hemeroc

+0

@Hemeroc: bien, vous pouvez utiliser java.awt.Robot faire des captures d'écran et essayer de trouver la barre d'état système. Mais je pense qu'il serait beaucoup plus utile d'essayer de corriger ce bug plutôt que de construire une solution de contournement complexe. Et qui dit que l'arrière-plan de la barre d'état système est une couleur unique? –

1

J'ai eu un problème similaire. Je voulais afficher une fenêtre contextuelle lorsque je fais un clic droit sur l'icône de la barre d'état, et aucune fenêtre en cliquant dessus. (Im encore à rechercher si je peux utiliser le menu contextuel par défaut). J'ai donc détecté l'emplacement de la souris sur l'écran lorsque l'icône a cliqué sur (Une propriété de l'événement souris) et affiché mon menu contextuel ici.