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 :

[look and feel] Linux me pose un problème


Sujet :

AWT/Swing Java

Vue hybride

Message précédent Message précédent   Message suivant Message suivant
  1. #1
    Membre confirmé
    Profil pro
    Inscrit en
    Juillet 2003
    Messages
    85
    Détails du profil
    Informations personnelles :
    Âge : 43
    Localisation : France, Nord (Nord Pas de Calais)

    Informations forums :
    Inscription : Juillet 2003
    Messages : 85
    Par défaut [look and feel] Linux me pose un problème
    Bonjour mes chere gens,

    Voila en gros mon problème : j'ai créé une petite application swing et le look and feel s'applique tres bien sous windows. Mais des que je recompile sous linux, la il ne s'applique plus. Je ne sais pas pourquoi et je ne sais pas comment l'appliquer.

    Le bout de code est tres court car tres general :
    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
     
    public class CryptReader extends javax.swing.JFrame {
     
        /** Creates new form CryptReader */
        public CryptReader() {
     
            try{
                UIManager.setLookAndFeel(UIManager.getSystemLookAndFeelClassName());
            }catch(Exception e){
                System.out.println("Erreur de look and feel");
            }
     
            initComponents();
        }
     
       private void initComponents(){
          //Mise en place des composants swing
       }
    }
    C'est peut etre tout simple, et ca peut paraitre idiot mais bon. Ca arrive a tout le monde de buter sur des problèmes bidons des fois.

    Merci

  2. #2
    Rédacteur
    Avatar de lunatix
    Homme Profil pro
    Architecte technique
    Inscrit en
    Novembre 2002
    Messages
    1 960
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Localisation : France, Val de Marne (Île de France)

    Informations professionnelles :
    Activité : Architecte technique

    Informations forums :
    Inscription : Novembre 2002
    Messages : 1 960
    Par défaut
    le look and feel linux (gtk), n'est disponible que depuis peu de temps ... tu es sur d'avoir une version recente de jre ?

  3. #3
    Membre Expert
    Avatar de narmataru
    Profil pro
    Inscrit en
    Décembre 2002
    Messages
    1 548
    Détails du profil
    Informations personnelles :
    Âge : 44
    Localisation : France, Loire Atlantique (Pays de la Loire)

    Informations forums :
    Inscription : Décembre 2002
    Messages : 1 548
    Par défaut
    En bien ce n'est pas compliqué, il suffit de bien regarder la méthode :getSystemLookAndFeelClassName()

    Celle-ci renvoie un look and feel essayant de se rapprocher de l'apparence du système d'exploitation, et bien évidemment lorsque tu change de système d'exploitation, ben le look and feel change élémentaire mon cher.....

  4. #4
    Membre confirmé
    Profil pro
    Inscrit en
    Juillet 2003
    Messages
    85
    Détails du profil
    Informations personnelles :
    Âge : 43
    Localisation : France, Nord (Nord Pas de Calais)

    Informations forums :
    Inscription : Juillet 2003
    Messages : 85
    Par défaut
    Pour vous repondre :

    le look and feel linux (gtk), n'est disponible que depuis peu de temps ... tu es sur d'avoir une version recente de jre ?
    Oui j'ai la derniere version , je l'ai prise hier sur le site de sun.

    En bien ce n'est pas compliqué, il suffit de bien regarder la méthode :getSystemLookAndFeelClassName()

    Celle-ci renvoie un look and feel essayant de se rapprocher de l'apparence du système d'exploitation, et bien évidemment lorsque tu change de système d'exploitation, ben le look and feel change élémentaire mon cher.....
    Ca je sais tres bien bien qu'il essai de prendre l'apparence du systeme, je n'ai pas mis ca par hasard (elementaire je pense...). Le truc c que sous linux je vois que l'appli a bien l'apparence de swing et non des fenetres que j'ai sous KDE.

    Donc le Look and feel du systeme ne s'applique pas sous linux, enfin de mon coté.

  5. #5
    Membre Expert
    Avatar de narmataru
    Profil pro
    Inscrit en
    Décembre 2002
    Messages
    1 548
    Détails du profil
    Informations personnelles :
    Âge : 44
    Localisation : France, Loire Atlantique (Pays de la Loire)

    Informations forums :
    Inscription : Décembre 2002
    Messages : 1 548
    Par défaut
    Désolé, je pensais que tu ne comprenait pas pourquoi le look and feel changeait alros que tu le définissait...

    Ca métonnerait qu'il y ait un look and feel qui s'adpate automatiquement à linux vu que tu configure toi même l'apparence de linux et les composant graphique. Donc dans ton cas il va falloir chercher un look and feel qui ressemble à KDE. Mais le jour ou tu changeras pour gnome ou autre, ton look and feel ne s'accordera pas. Java ne peut tout simplement pas savoir quelle apparence a ton système.
    Comme le dit la javadoc, la methode getSystemLookAndFeelClassName() te renvoie le nom du look and feel se rapprochant de ton système 'S'il y en a un' sinon c'est le look par défaut qui est renvoyé.

  6. #6
    Rédacteur
    Avatar de lunatix
    Homme Profil pro
    Architecte technique
    Inscrit en
    Novembre 2002
    Messages
    1 960
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Localisation : France, Val de Marne (Île de France)

    Informations professionnelles :
    Activité : Architecte technique

    Informations forums :
    Inscription : Novembre 2002
    Messages : 1 960
    Par défaut
    sous linux essaye de mettre le look and feel a com.sun.java.swing.plaf.gtk.GTKLookAndFeel pour voir si ca marche..

  7. #7
    Membre confirmé
    Profil pro
    Inscrit en
    Juillet 2003
    Messages
    85
    Détails du profil
    Informations personnelles :
    Âge : 43
    Localisation : France, Nord (Nord Pas de Calais)

    Informations forums :
    Inscription : Juillet 2003
    Messages : 85
    Par défaut
    Bon j'ai fais des changement :
    sous linux essaye de mettre le look and feel a com.sun.java.swing.plaf.gtk.GTKLookAndFeel pour voir si ca marche..
    Bien vu! Mais un second probleme se pose. Le produit doit etre portable et diot etre professionnel quelle que soit la plateforme. D'où l'idée du look and feel système.

    De plus ce look and feel ne plait pas trop mais bon, si il y en a une il doit en avoir d'autre.

    A mon avis il doit y avoir moyen de tester sur quel systeme je me trouve et d'appliquer un look and feel en fonction du resultat.

    Bref si vous avez des idées n'hesitez pas. Mais j'ai bien avancé deja merci a vous deux.

  8. #8
    Membre actif

    Profil pro
    Inscrit en
    Janvier 2003
    Messages
    70
    Détails du profil
    Informations personnelles :
    Localisation : France

    Informations forums :
    Inscription : Janvier 2003
    Messages : 70
    Par défaut
    Salut,

    tu dis voulopir etre portable, or l'utilisation du look and feel proche du systeme peut poser des problemes de portabilite, notamment si tu n'utilises pas les layouts partout, car la taille des composants change considerablement selon les L&F.
    Sous linux le look and feel par defaut doit etre metal (ou peut-etre GTK sur la derniere jre).



    Je te conseillerai soit d'utiliser le meme look and feel pour tous les systemes (par exemple GTK qui est un peu plus joli que metal), soit d'utiliser un look and feel additionnel, mais la aussi le meme pour tous les systemes. Par exemple jgoodies propose un tres joli look and feel portable de surtroit et avec plusieurs themes.

  9. #9
    Membre Expert
    Avatar de narmataru
    Profil pro
    Inscrit en
    Décembre 2002
    Messages
    1 548
    Détails du profil
    Informations personnelles :
    Âge : 44
    Localisation : France, Loire Atlantique (Pays de la Loire)

    Informations forums :
    Inscription : Décembre 2002
    Messages : 1 548
    Par défaut
    Idem, je te conseillerais d'utiliser le même look and feel quelque soit le système. Pour ma part j'utilise le look and feel plasticXP :

    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    UIManager.setLookAndFeel ("com.jgoodies.plaf.plastic.PlasticXPLookAndFeel");
    Sinon pour savoir sur quel os tu te trouve :

    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    boolean isWindows = (System.getProperty("os.name").toUpperCase().indexOf("WIN") >= 0);
    en espérant qu'il n'y ait pas d'autres os comprenant la chaine WIN

  10. #10
    Membre confirmé
    Profil pro
    Inscrit en
    Juillet 2003
    Messages
    85
    Détails du profil
    Informations personnelles :
    Âge : 43
    Localisation : France, Nord (Nord Pas de Calais)

    Informations forums :
    Inscription : Juillet 2003
    Messages : 85
    Par défaut
    en ce qui concerne mes layout ils sont tous en GridBagLayout, donc de ce coté je n'ai pas de probleme.

    En ce qui concerne ton L&F "com.jgoodies.plaf.plastic.PlasticXPLookAndFeel" est il par defaut avec Java?

    Bref avec tous ca je vais resoudre mon probleme.

    Merci pour votre aide mes gens!!

  11. #11
    Membre Expert
    Avatar de narmataru
    Profil pro
    Inscrit en
    Décembre 2002
    Messages
    1 548
    Détails du profil
    Informations personnelles :
    Âge : 44
    Localisation : France, Loire Atlantique (Pays de la Loire)

    Informations forums :
    Inscription : Décembre 2002
    Messages : 1 548
    Par défaut
    Citation Envoyé par -=Spoon=-
    en ce qui concerne mes layout ils sont tous en GridBagLayout, donc de ce coté je n'ai pas de probleme.

    En ce qui concerne ton L&F "com.jgoodies.plaf.plastic.PlasticXPLookAndFeel" est il par defaut avec Java?
    Non il faut le télécharger sur internet...
    https://looks.dev.java.net/

    Citation Envoyé par -=Spoon=-
    Merci pour votre aide mes gens!!
    rroooo on ne t'appartient pas encore

  12. #12
    Rédacteur
    Avatar de lunatix
    Homme Profil pro
    Architecte technique
    Inscrit en
    Novembre 2002
    Messages
    1 960
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Localisation : France, Val de Marne (Île de France)

    Informations professionnelles :
    Activité : Architecte technique

    Informations forums :
    Inscription : Novembre 2002
    Messages : 1 960
    Par défaut
    jgoodies a fait BEAUCOUP pour swing !

  13. #13
    Membre confirmé
    Profil pro
    Inscrit en
    Juillet 2003
    Messages
    85
    Détails du profil
    Informations personnelles :
    Âge : 43
    Localisation : France, Nord (Nord Pas de Calais)

    Informations forums :
    Inscription : Juillet 2003
    Messages : 85
    Par défaut
    Re tout le monde,

    Je me relance dans ce post car ce n'est que la continuité du probleme.

    En fait j'ai utiliser un L&F pour les deux. J'ai donc telecharger skinlf.jar. Et ensuite j'ai telecharger des L&F. Bon tout marche nickel.

    Mais je coudrait faire un jar. Mais je me galere comme un fou a y mettre Skinlf.jar dedans ou a coté. Je n'arrive pas a executer mon jar. Il me sort toujours la meme erreur :
    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    1
    2
    3
    4
    5
     
    Exception in thread "main" java.lang.NoClassDefFoundError: com/l2fprod/gui/plaf/skin/SkinLookAndFeel
            at com.dhimyotis.Dhicodeur.util.SwingUtilitaires.changeLookAndFeel(SwingUtilitaires.java:25)
            at com.dhimyotis.Dhicodeur.gui.CryptReader.<init>(CryptReader.java:32)
            at com.dhimyotis.Dhicodeur.gui.CryptReader.main(CryptReader.java:170)
    Merci de me dire un peu comment faire pour gerer des jar dans des jar executables ou alors me rediriger vers une adresse ou c'est BIEN expliqué.

    MErci

  14. #14
    Membre confirmé
    Profil pro
    Inscrit en
    Juillet 2003
    Messages
    85
    Détails du profil
    Informations personnelles :
    Âge : 43
    Localisation : France, Nord (Nord Pas de Calais)

    Informations forums :
    Inscription : Juillet 2003
    Messages : 85
    Par défaut
    bon g trouvé

    Il manquait simplement un retour a la ligne a la fin de mon Manifest...
    Trop nul...

+ Répondre à la discussion
Cette discussion est résolue.

Discussions similaires

  1. Problème de Look and Feel non appliqué lors de "java -jar .."
    Par olivier57b dans le forum Agents de placement/Fenêtres
    Réponses: 1
    Dernier message: 29/10/2011, 13h53
  2. Problème utilisation Look and Feel
    Par dimou59 dans le forum Débuter
    Réponses: 7
    Dernier message: 09/05/2011, 15h27
  3. Look and Feel metal problème
    Par storm_2000 dans le forum AWT/Swing
    Réponses: 2
    Dernier message: 30/12/2006, 12h43
  4. [Look and feel] Texte des JLabels en gras
    Par aliasjcdenton dans le forum AWT/Swing
    Réponses: 11
    Dernier message: 26/01/2006, 11h49
  5. [JTable]Problême de Look and Feel???
    Par D-Phaz dans le forum Composants
    Réponses: 1
    Dernier message: 05/08/2005, 15h24

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