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

Agents de placement/Fenêtres Java Discussion :

Probleme de Mise en Forme (layout)


Sujet :

Agents de placement/Fenêtres Java

  1. #1
    Membre éclairé
    Profil pro
    Inscrit en
    Juin 2006
    Messages
    351
    Détails du profil
    Informations personnelles :
    Localisation : France

    Informations forums :
    Inscription : Juin 2006
    Messages : 351
    Par défaut Probleme de Mise en Forme (layout)
    voila ce que je voudrais obtenir:
    Nom : dispo2.jpg
Affichages : 145
Taille : 17,2 Ko
    Voila ce que j'obtient:
    Nom : appli2.JPG
Affichages : 139
Taille : 24,5 Ko

    J'ai lu de long en large en travers le poste de calo sur le GridBagLayout, je pensais avoir compris mais finalement non ca ne marche tjrs pas completement, la hauteur est pas bonne

    Donc je m'appuis du dessin fait sous paint plus haut et je rentre ces valeurs:
    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    1
    2
    3
    4
    5
    6
    7
    8
     
    	private int placeX []= {0,0,0,1,2,1} ; 
    	private int placeY []= {0,1,2,1,0,2};
    	private int largeur []={2,1,1,1,1,1};
    	private int hauteur []={1,1,1,1,3,1};
    	private int poidX []={45,30,30,15,10,15};
    	private int poidY []={10,30,10,30,50,10};
    avec comme ordre panels 1,2,3,4,5,vide
    Je comprend pas du tout ce qui va pas , si quelqu'un pourrait me dire quels valeurs sont incorrect et pour quel raison ca serait trop cool

    c'est surement ma grille ou les longueurs que je definis sur paint qui colle pas avec le principe du GridBagLayout je suppose

    Apres un autre probleme pas directement en rapport avec le gestionnaire je pense. Quand je met un Jtable dans mon panel2 le tableau deforme completement la disposition pour prendre les 3/4 de la frame ......

    Es quelqu'un serait pourquoi ?

    Et enfin quand on Met une boite de saisie JTextArea , quand on rentre plus de caractere que la largeur initiale de la boite sans retour a la ligne , la boite s'agrandie comme par magie et va deformer toute la disposition initial ...

    Donc si une arme charitable voulait bien m'expliquer d'ou vienne ces problemes je vous remercie d'avance.

    Parceque la je m'arrache les cheveux

  2. #2
    Membre éclairé Avatar de nicotine002
    Profil pro
    Inscrit en
    Décembre 2005
    Messages
    577
    Détails du profil
    Informations personnelles :
    Localisation : France

    Informations forums :
    Inscription : Décembre 2005
    Messages : 577
    Par défaut
    Bonjour, je te file le code avec lequel j'ai réalisé ton Grid:
    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
    32
    33
    34
    35
    36
    37
    38
    39
    40
    41
    42
    43
    44
     
    private int x[]   = {0,0,0,1,1,2};
    	private int y[]   = {0,1,2,1,2,0};
    	private int larg[]= {2,1,1,1,1,1};
    	private int haut[]= {1,1,1,1,1,3};
    	private int px[]  = { 45,30,30,15,15,10};
    	private int py[]  = { 10,30,10,30,10,10};
     
     
    GridBagLayout layout = new GridBagLayout();
    		GridBagConstraints c = new GridBagConstraints();
            c.fill = c.BOTH ;
     
            getContentPane().setLayout(layout);
     
           	JPanel pan1 = new JPanel();
           	pan1.setBackground(Color.blue);
    		JPanel pan2 = new JPanel();
    		pan2.setBackground(Color.red);
    		JPanel pan3 = new JPanel();
    		pan3.setBackground(Color.green);
    		JPanel pan4 = new JPanel();
    		pan4.setBackground(Color.white);
    		JPanel pan5 = new JPanel();
    		pan5.setBackground(Color.gray);
    		JPanel pan6 = new JPanel();
    		pan6.setBackground(Color.red);
     
     
     
    		for (int i=0; i<x.length; i++){
     
    		     c.gridx=x[i]; c.gridy=y[i];
    		     c.gridwidth=larg[i]; c.gridheight=haut[i];
    		     c.weightx=px[i]; c.weighty=py[i];
    		     switch(i){
    			     case 0: getContentPane().add( pan1, c );break;
    			     case 1: getContentPane().add( pan2, c ); break;
    			     case 2: getContentPane().add( pan3, c ); break;
    			     case 3: getContentPane().add( pan4, c ); break;
    			     case 4: getContentPane().add( pan5, c ); break;
    			     case 5: getContentPane().add( pan6, c ); break;
    		     }
          	}
    Et ca donne ceci le fichier joint, je pense que c'est ce que tu désirais.

    Pour :
    Apres un autre probleme pas directement en rapport avec le gestionnaire je pense. Quand je met un Jtable dans mon panel2 le tableau deforme completement la disposition pour prendre les 3/4 de la frame ......
    En fait je pense qu'il faut attendre que tout tes Panel soit remplis, à la limite, tu peux toujours untilisé un setPreferredSize, mais en premier, insert tout ce qu'il faut dans tes JPanel car ca se redimmensionne en fonction de ce que tu y met mais également en fonction des autres JPanel(si il y a quelquechose dedans par exemple).

    Et enfin pour:
    Et enfin quand on Met une boite de saisie JTextArea , quand on rentre plus de caractere que la largeur initiale de la boite sans retour a la ligne , la boite s'agrandie comme par magie et va deformer toute la disposition initial ...
    Utilise la méthode setPreferredSize sur ton JTextArea en lui donnant une dimension spécifique, mais je ne suis pas sûr que cela soit la meilleure solutionµ.

  3. #3
    Membre éclairé
    Profil pro
    Inscrit en
    Juin 2006
    Messages
    351
    Détails du profil
    Informations personnelles :
    Localisation : France

    Informations forums :
    Inscription : Juin 2006
    Messages : 351
    Par défaut
    Merci bcp c exactement ca que je voulais mais euh tu as pas mis les tableaux des valeurs , c pas le code qui me pose probleme mais les valeurs

    moi j'avais mis ca(mais c pas bon):

    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    1
    2
    3
    4
    5
    6
    private int placeX []= {0,0,0,1,2,1} ; 
    private int placeY []= {0,1,2,1,0,2};
    private int largeur []={2,1,1,1,1,1};
    private int hauteur []={1,1,1,1,3,1};
    private int poidX []={45,30,30,15,10,15};
    private int poidY []={10,30,10,30,50,10};
    et toi tu as mis quel valeurs ?

    edit: ok je vais essayer ta methode pour le tableau

  4. #4
    Membre éclairé Avatar de nicotine002
    Profil pro
    Inscrit en
    Décembre 2005
    Messages
    577
    Détails du profil
    Informations personnelles :
    Localisation : France

    Informations forums :
    Inscription : Décembre 2005
    Messages : 577
    Par défaut
    Je les avais ajouté entre temps

  5. #5
    Membre éclairé
    Profil pro
    Inscrit en
    Juin 2006
    Messages
    351
    Détails du profil
    Informations personnelles :
    Localisation : France

    Informations forums :
    Inscription : Juin 2006
    Messages : 351
    Par défaut
    merci

    En faite j'avais les bonnes valeurs , c'etais une erreur de syntaxe j'avais ecris
    ca:

    contraintes.weightx = poidX[i];
    contraintes.weighty = poidX[i];

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

Discussions similaires

  1. Probleme de mise en forme avec DIV et CSS
    Par freesurfer dans le forum Mise en page CSS
    Réponses: 2
    Dernier message: 09/02/2007, 15h26
  2. Petit problème de mise en forme
    Par simplyme dans le forum Balisage (X)HTML et validation W3C
    Réponses: 6
    Dernier message: 30/11/2006, 19h36
  3. Probleme de mise en Forme
    Par Elendhil dans le forum AWT/Swing
    Réponses: 3
    Dernier message: 09/06/2006, 19h28
  4. probleme : tableau & mise en forme
    Par grumly22 dans le forum Balisage (X)HTML et validation W3C
    Réponses: 6
    Dernier message: 03/04/2006, 22h53
  5. [Librairies] fichier cvs; problème de mise en forme
    Par illegalsene dans le forum CVS
    Réponses: 3
    Dernier message: 19/10/2005, 15h35

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