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 :

probleme de positionnement avec GridBadlayout


Sujet :

AWT/Swing Java

Vue hybride

Message précédent Message précédent   Message suivant Message suivant
  1. #1
    Membre confirmé
    Inscrit en
    Septembre 2008
    Messages
    145
    Détails du profil
    Informations personnelles :
    Âge : 68

    Informations forums :
    Inscription : Septembre 2008
    Messages : 145
    Par défaut probleme de positionnement avec GridBadlayout
    Bonjour,

    J'ai repris le code du tutoriel de java.com et j'essaie de le modifier en vain, je voudrai savoir ce qui cloche dans le code à moins que ce que je désire n'est pas possible avec GridBagLayout.

    Les boutons 1,2 et 3 en haut à gauche d'une hauteur et largeur fixes, soit une taille normale d'un bouton (quelque que soit la taille de la fenêtre).
    Le bouton 5 en bas à droite et d'une largeur et hauteur fixes.
    Le bouton 4 qui prend tout ce qui reste comme place, sa taille s'ajuste à la taille de la fenêtre.

    Le problème c'est que la hauteur de la ligne 1 suit la hauteur de la ligne 2, ce que je ne veux pas...

    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
    45
    46
    47
    48
    49
    50
    51
    52
    pane.setLayout(new GridBagLayout());
    	GridBagConstraints c = new GridBagConstraints();
    	if (shouldFill) {
    	//natural height, maximum width
    	c.fill = GridBagConstraints.HORIZONTAL;
    	}
     
    	button = new JButton("Button 1");
    	c.weightx = 0.5;
    	c.weighty = 1;
    	c.fill = GridBagConstraints.HORIZONTAL;
    	c.gridx = 0;
    	c.gridy = 0;
    	pane.add(button, c);
     
    	button = new JButton("Button 2");
    	c.fill = GridBagConstraints.HORIZONTAL;
    	c.weightx = 0.5;
    	c.weighty = 1;
    	c.gridx = 1;
    	c.gridy = 0;
    	pane.add(button, c);
     
    	button = new JButton("Button 3");
    	c.fill = GridBagConstraints.HORIZONTAL;
    	c.weightx = 0.5;
    	c.weighty = 1;
    	c.gridx = 2;
    	c.gridy = 0;
    	pane.add(button, c);
     
    	button = new JButton("Long-Named Button 4");
    	c.fill = GridBagConstraints.BOTH;
    	c.anchor = GridBagConstraints.CENTER;
    	//c.ipady = 40;      //make this component tall
    	//c.weightx = 0.0;
    	c.gridwidth = 3;
    	c.gridheight = 10;
    	c.gridx = 0;
    	c.gridy = 1;
    	pane.add(button, c);
     
    	button = new JButton("5");
    	c.fill = GridBagConstraints.HORIZONTAL;
    	c.ipady = 0;       //reset to default
    	c.weighty = 1.0;   //request any extra vertical space
    	c.anchor = GridBagConstraints.PAGE_END; //bottom of space
    	c.insets = new Insets(10,0,0,0);  //top padding
    	c.gridx = 1;       //aligned with button 2
    	c.gridwidth = 2;   //2 columns wide
    	c.gridy = 12;       //third row
    	pane.add(button, c);
    a+

  2. #2
    Membre confirmé
    Profil pro
    Inscrit en
    Avril 2007
    Messages
    171
    Détails du profil
    Informations personnelles :
    Localisation : France, Paris (Île de France)

    Informations forums :
    Inscription : Avril 2007
    Messages : 171
    Par défaut
    Quelques questions :
    Pourquoi n'utilises-tu pas :
    GBC.fill = GridBagConstraints.NONE ??

    Si la taille de ta fenêtre évolue, la taille des composants évoluera logiquement aussi : les gestionnaires de présentation gèrent la place disponible au mieux selon les demandes.

    Pourquoi n'utilises-tu pas des entiers plutôt pour les c.weightx?

    Ne devrais-tu pas faire :
    c.gridx = 1;
    c.gridy = 1;
    pour le bouton 4?

  3. #3
    Membre confirmé
    Inscrit en
    Septembre 2008
    Messages
    145
    Détails du profil
    Informations personnelles :
    Âge : 68

    Informations forums :
    Inscription : Septembre 2008
    Messages : 145
    Par défaut re
    eh bien, je ne veux pas des boutons de taille variable, le bouton 4 je le remplace par un panel ... mais rien ne fonctionne

Discussions similaires

  1. probleme de positionnement avec SpringLayout
    Par Zorgz dans le forum AWT/Swing
    Réponses: 1
    Dernier message: 08/09/2006, 18h06
  2. Réponses: 6
    Dernier message: 04/04/2003, 15h28
  3. [Kylix] Probleme de séparateur avec Kylix2 ?
    Par jeanphy dans le forum EDI
    Réponses: 4
    Dernier message: 10/02/2003, 16h41
  4. Réponses: 12
    Dernier message: 23/10/2002, 11h56
  5. Probleme d'impression avec la méthode TForm->Print()
    Par Kid Icarus dans le forum C++Builder
    Réponses: 13
    Dernier message: 31/07/2002, 14h26

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