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 :

[JToolBar] difference de comportement (affichage) entre jdk 1.4 et 1.5


Sujet :

AWT/Swing Java

  1. #1
    Membre averti Avatar de biozaxx
    Profil pro
    Inscrit en
    Août 2004
    Messages
    403
    Détails du profil
    Informations personnelles :
    Localisation : France

    Informations forums :
    Inscription : Août 2004
    Messages : 403
    Points : 375
    Points
    375
    Par défaut [JToolBar] difference de comportement (affichage) entre jdk 1.4 et 1.5


    voila je suis en train de tester une appli developpée avec le jdk 1.4.2.0.5
    pour la rendre compatible avec le 1.5 (1.5.0_08)

    pas de gros probleme insoluble sauf une chose :
    j'ai un comportement d'affichage different d'une jtoolbar entre la version compilée avec le 1.4 et celle compilée avec le 1.5 ???

    ma toolbar contient des jbutton(associés a des icones) et des séparateurs.

    avec la version 1.4 , la taille des boutons est adaptée aux icones (tous de la meme taille ) , avec la 1.5 les boutons sont 3 x plus gros que les icones associés ! comme si le layout attribué prenait le maximum de place ...
    Je precise que je n'ai rien changé dans le code entre les 2 versions, et qu'en imposant un gridlayout par exemple ca ne change rien ....

    je joins 2 pj representant des screenshot de l'appli, on voit bien que sur la version 1.5 la toolbar prend + de la moitié de la largeur de l'ecran ...

    dernier détail, en cherchant sur le web j'ai trouvé une soumission de bug qui avait l'air de correspondre, sauf que cela se produisait uniquement lorsqu'un separateur etait présent. Moi le comportement est le meme avec ou sans separateur. (et le bug a été classé sans suite et non reproductible par sun)

    merci de votre aide
    Images attachées Images attachées   

  2. #2
    Membre confirmé Avatar de schniouf
    Homme Profil pro
    Ingénieur développement logiciels
    Inscrit en
    Décembre 2003
    Messages
    382
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Âge : 38
    Localisation : Luxembourg

    Informations professionnelles :
    Activité : Ingénieur développement logiciels
    Secteur : High Tech - Opérateur de télécommunications

    Informations forums :
    Inscription : Décembre 2003
    Messages : 382
    Points : 474
    Points
    474
    Par défaut
    C'est pas à cause du changement de Look & Feel ?

  3. #3
    Membre averti Avatar de biozaxx
    Profil pro
    Inscrit en
    Août 2004
    Messages
    403
    Détails du profil
    Informations personnelles :
    Localisation : France

    Informations forums :
    Inscription : Août 2004
    Messages : 403
    Points : 375
    Points
    375
    Par défaut
    non,
    c'est la seule remarque que je n'ai pas faite , les screens shots ont été fait a partir de pc differents pour des facilités de test, mais le comportement est bien different avec le meme look&feel

  4. #4
    Membre averti Avatar de biozaxx
    Profil pro
    Inscrit en
    Août 2004
    Messages
    403
    Détails du profil
    Informations personnelles :
    Localisation : France

    Informations forums :
    Inscription : Août 2004
    Messages : 403
    Points : 375
    Points
    375
    Par défaut
    suite a ta remarque je viens de tester quelque chose : jusqu'a present le l&f etait celui du system (et donc windows chez moi)
    Je viens donc de tester une compilation 1.5 sans specifier le l&f (donc java par defaut)

    et la pas de probleme, le comportement est le meme entre 1.5 et 1.4

    c'est donc le l&f windows qui reagit differement entre 1.4 et 1.5

    je joins le petit bou de code suivant qui decrit bien le probleme, en commentant les lignes specifiant le l&f il n'y a pas de difference d'affichage, par contre c'est tres net avec.

    si quelqu'un connait le moyen de corriger cela (je m'adresse aux expert de la GUI ...)

    merci pour votre aide

    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
    28
    29
    30
    31
     
    import java.awt.BorderLayout;
    import javax.swing.*;
     
    public class TestJToolBar {
     
    	public static void main (String [] args){
     
    	    try {
    	              Manager.setLookAndFeel(UIManager.getSystemLookAndFeelClassName());
    	    } catch (Exception e) {
    	        e.printStackTrace();
    	    }
     
    		JFrame frame = new JFrame();
    		frame.setSize(400,200);
    		frame.getContentPane().setLayout(new BorderLayout());
     
    		JPanel panel = new JPanel();
    		panel.setLayout(new BorderLayout());
    		JToolBar bar = new JToolBar();
    		JButton b1 = new JButton(new ImageIcon(TestJToolBar.class.getResource("img1.gif")));
    		JButton b2 = new JButton(new ImageIcon(TestJToolBar.class.getResource("img2.gif")));
     
    		bar.add(b1);
    		bar.add(b2);
    		panel.add(bar, BorderLayout.EAST);
    		frame.getContentPane().add(panel, BorderLayout.NORTH);
    		frame.setVisible(true);
    	}
    }

Discussions similaires

  1. Réponses: 1
    Dernier message: 01/09/2009, 13h42
  2. IE : difference d'affichage entre XP et Vista
    Par Delphy113 dans le forum Balisage (X)HTML et validation W3C
    Réponses: 4
    Dernier message: 13/08/2009, 11h31
  3. Difference de comportement trigger wpf entre intel ou ati GC
    Par ZashOne dans le forum Administration
    Réponses: 1
    Dernier message: 06/09/2007, 21h49
  4. Réponses: 3
    Dernier message: 08/10/2004, 00h12
  5. [Concept][Définition] Différence entre JDK et SDK
    Par mr-casimir dans le forum Général Java
    Réponses: 5
    Dernier message: 25/05/2004, 12h23

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