IdentifiantMot de passe
Loading...
Mot de passe oublié ?Je m'inscris ! (gratuit)
Navigation

Inscrivez-vous gratuitement
pour pouvoir participer, suivre les réponses en temps réel, voter pour les messages, poser vos propres questions et recevoir la newsletter

AWT/Swing Java Discussion :

Icône moche dans la barre des tâches


Sujet :

AWT/Swing Java

Vue hybride

Message précédent Message précédent   Message suivant Message suivant
  1. #1
    Membre averti
    Profil pro
    Inscrit en
    Mai 2003
    Messages
    21
    Détails du profil
    Informations personnelles :
    Localisation : France

    Informations forums :
    Inscription : Mai 2003
    Messages : 21
    Par défaut Icône moche dans la barre des tâches
    Salut.
    J'ai un PNG que j'utilise entre autres comme icône pour la fenêtre/barre des tâche et qui ne passe pas bien sur la barre des tâche uniquement lorsqu'il n'est pas en 16x16. J'aimerai en mettre une plus grande, car je l'utilise pour d'autres choses et je pense que sous d'autres OS qui auront des icônes plus grandes (Mac ?), il va redimensionner un 16x16, ce qui risque d'être très moche. Sans parler du alt-tab...
    J'ai trouvé un ONG de 32x32 dans le répertoire de netbeans, et je suppose qu'il l'utilise comme icône, sans problème de redimensionnement. Je ne parviens pas à faire une recherche google sur les sources. Savez-vous comment ils font, ou comment peut-on faire pour utiliser une icône plus grande sans avoir cet effet hideux ?

  2. #2
    Membre averti
    Profil pro
    Inscrit en
    Mai 2003
    Messages
    21
    Détails du profil
    Informations personnelles :
    Localisation : France

    Informations forums :
    Inscription : Mai 2003
    Messages : 21
    Par défaut
    Je précise, en Java 5.
    J'ai lu ici que Java 6 donnait cette possibilité.

  3. #3
    Expert confirmé
    Avatar de sinok
    Profil pro
    Inscrit en
    Août 2004
    Messages
    8 765
    Détails du profil
    Informations personnelles :
    Âge : 45
    Localisation : France, Paris (Île de France)

    Informations forums :
    Inscription : Août 2004
    Messages : 8 765
    Par défaut
    Sinon c'est à toi de fournir un mécanisme permettant de récupérer la bonne icône.

    Par exemple une Factory possédant une méthode getFrameIcon et sortant la bonne icône suivant l'OS (32*32 ou 16*16).

    Comme çà plus de problème.

  4. #4
    Membre averti
    Profil pro
    Inscrit en
    Mai 2003
    Messages
    21
    Détails du profil
    Informations personnelles :
    Localisation : France

    Informations forums :
    Inscription : Mai 2003
    Messages : 21
    Par défaut
    Où dois-je faire ça ? Je ne vois pas de fonction pour lier une Factory à ma JFrame

  5. #5
    Expert confirmé
    Avatar de sinok
    Profil pro
    Inscrit en
    Août 2004
    Messages
    8 765
    Détails du profil
    Informations personnelles :
    Âge : 45
    Localisation : France, Paris (Île de France)

    Informations forums :
    Inscription : Août 2004
    Messages : 8 765
    Par défaut
    La méthode de ta factory te renverra l'ImageIcon en fonction de l'OS point barre.
    Ensuite il te suffira de l'appliquer à ta JFrame

    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    1
    2
    3
    4
    5
    6
    7
    8
    9
    10
    11
    12
    13
    14
    15
    16
    17
    18
    19
    20
    21
    22
    23
    24
    25
    26
    27
     
    public class FrameIconFactory {
       private static FrameIconFactory instance = new FrameIconFactory();
       private ImageIcon frameIcon;
       private FrameIconFactory() {
          init();
       }
     
       private void init() {
           String iconPath = null;
           //on détermine le chemin de l'icon en fontion de l'OS -- cf System.getProperty pour avoir le nom de l'OS
           ....
     
           if(iconPath != null ) {
              frameIcon = new ImageIcon(iconPath);
           }
       }
     
       public static FrameIconFactory getInstance() {
          return instance;
       }
     
       public ImageIcon getFrameIcon() {
          return frameIcon;
       }
     
    }
    puis il te suffira de faire ceci au niveau de ta JFrame:

    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    1
    2
     
    maFrame.setIconImage(FrameIconFactory.getInstance().getFrameIcon());
    ++

  6. #6
    Membre averti
    Profil pro
    Inscrit en
    Mai 2003
    Messages
    21
    Détails du profil
    Informations personnelles :
    Localisation : France

    Informations forums :
    Inscription : Mai 2003
    Messages : 21
    Par défaut
    Merci pour ta réponse documentée.

    Il reste un problème : l'icône est toujours redimensionnée en 16x16 pour windows XP, et agrandie en 32x32 lors du alt-tab. N'y a-t-il pas moyen d'y mettre une vraie 32x32, comme sous Netbeans ?

Discussions similaires

  1. Réponses: 6
    Dernier message: 15/05/2006, 12h50
  2. Ajouter une icône d'une application dans le barre des tâches
    Par Lorponos dans le forum Autres Logiciels
    Réponses: 11
    Dernier message: 13/05/2006, 20h41

Partager

Partager
  • Envoyer la discussion sur Viadeo
  • Envoyer la discussion sur Twitter
  • Envoyer la discussion sur Google
  • Envoyer la discussion sur Facebook
  • Envoyer la discussion sur Digg
  • Envoyer la discussion sur Delicious
  • Envoyer la discussion sur MySpace
  • Envoyer la discussion sur Yahoo