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 :

GridBagLayout, positionnempent d'un élément


Sujet :

Agents de placement/Fenêtres Java

Vue hybride

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

    Informations forums :
    Inscription : Septembre 2008
    Messages : 115
    Par défaut GridBagLayout, positionnempent d'un élément
    Bonjour,

    Je travaille sur un un projet et j'utilise le GridBagLayout que je ne maitrise pas trop. Je viens donc vers vous pour trouver des explications à mes problèmes

    Voilà ce que je voudrai :



    J'ai réussi mais un peu à la barbare à vrai dire et j'aime bien quand c'est propre. J'ai utilié une ancre à l'ouest pour le "m" et pour les deux éléments suivants des insets dont un négatif(ça j'aime pas du tout^^).

    Voilà ce que j'ai pour le moment :



    Je positionne les éléments de la première ligne sur la ligne 1 de la 0-5 colonnes. Mais après le bouton d'en dessous je n'arrive pas à savoir comment le place au centre sans pour autant qu'il y ait d'espace entre les colonnes du dessus.

    Merci d'avance.

  2. #2
    Membre Expert
    Avatar de visiwi
    Profil pro
    Inscrit en
    Février 2008
    Messages
    1 052
    Détails du profil
    Informations personnelles :
    Localisation : France

    Informations forums :
    Inscription : Février 2008
    Messages : 1 052
    Par défaut
    Salut,

    Pour une interface aussi simple, il y a sans doute plus d'interrêt à utiliser conjointement un FlowLayout et un BorderLayout.
    Sinon, pour le Grid c'est difficile de voir ce qui ne va pas sans ton code (la partie Swing).

  3. #3
    Membre confirmé
    Profil pro
    Inscrit en
    Septembre 2008
    Messages
    115
    Détails du profil
    Informations personnelles :
    Âge : 36
    Localisation : France, Nord (Nord Pas de Calais)

    Informations forums :
    Inscription : Septembre 2008
    Messages : 115
    Par défaut
    C'est vrai que pour une interface comme ça tu as raison, mais comme j'aimerai bien maitriser le GBL je m'entraine avec des cas "assez simples".

    Voici mon code.

    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
     
    		//Heures
    		hourTxtField = new JTextField();
    		constraints.gridx = 0;
    		constraints.gridy = 0;
    		hourTxtField.setColumns(2);
    		mainPanel.add(hourTxtField,constraints);
     
    		hourLabel = new JLabel("h");
    		constraints.gridx = 1;
    		constraints.gridy = 0;
    		constraints.gridwidth = 1;
    		mainPanel.add(hourLabel,constraints);
     
    		//Minutes
    		minTxtField = new JTextField();
    		constraints.gridx = 2;
    		constraints.gridy = 0;
    		constraints.gridwidth = 1;
    		minTxtField.setColumns(2);
    		mainPanel.add(minTxtField,constraints);
     
    		minLabel = new JLabel("m");
    		constraints.gridx = 3;
    		constraints.gridy = 0;
    		constraints.gridwidth = 1;
    		mainPanel.add(minLabel,constraints);
     
    		//Secondes
    		secTxtField = new JTextField();
    		constraints.gridx = 4;
    		constraints.gridy = 0; 
    		secTxtField.setColumns(2);
    		mainPanel.add(secTxtField,constraints);
     
    		secLabel = new JLabel("s");
    		constraints.gridx = 5;
    		constraints.gridy = 0;
    		mainPanel.add(secLabel,constraints);
     
    		//Button OK
    		validationButton = new JButton("Start");
    		constraints.gridx = 1;
    		constraints.gridy = 1;
    		constraints.gridwidth = 3;
    		mainPanel.add(validationButton, constraints);

  4. #4
    Membre Expert
    Profil pro
    Inscrit en
    Août 2006
    Messages
    3 277
    Détails du profil
    Informations personnelles :
    Localisation : France

    Informations forums :
    Inscription : Août 2006
    Messages : 3 277
    Par défaut
    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
     
    // Heures
    		hourTxtField = new JTextField();
    		constraints.gridx = 0;
    		constraints.gridy = 0;
    		constraints.gridwidth = 1;
    		hourTxtField.setColumns(2);
    		mainPanel.add(hourTxtField, constraints);
     
    		hourLabel = new JLabel("h");
    		constraints.gridx = 1;
    		constraints.gridy = 0;
    		mainPanel.add(hourLabel, constraints);
     
    		// Minutes
    		minTxtField = new JTextField();
    		constraints.gridx = 2;
    		constraints.gridy = 0;
    		minTxtField.setColumns(2);
    		mainPanel.add(minTxtField, constraints);
     
    		minLabel = new JLabel("m");
    		constraints.gridx = 3;
    		constraints.gridy = 0;
    		mainPanel.add(minLabel, constraints);
     
    		// Secondes
    		secTxtField = new JTextField();
    		constraints.gridx = 4;
    		constraints.gridy = 0;
    		secTxtField.setColumns(2);
    		mainPanel.add(secTxtField, constraints);
     
    		secLabel = new JLabel("s");
    		constraints.gridx = 5;
    		constraints.gridy = 0;
    		mainPanel.add(secLabel, constraints);
     
    		// Button OK
    		validationButton = new JButton("Start");
    		constraints.gridx = 0;
    		constraints.gridy = 1;
    		constraints.gridwidth = 6;
    		constraints.anchor = GridBagConstraints.CENTER;
    		mainPanel.add(validationButton, constraints);
    En gros, j'ai simplement changé le gridx de ton bouton start de 1 en 0, j'ai mis un anchor à CENTER et j'ai changé le gridwidth à 6 pour que le bouton soit centré par rapport à tous les composants au dessus.
    C'est ce que tu voulais ?

  5. #5
    Membre confirmé
    Profil pro
    Inscrit en
    Septembre 2008
    Messages
    115
    Détails du profil
    Informations personnelles :
    Âge : 36
    Localisation : France, Nord (Nord Pas de Calais)

    Informations forums :
    Inscription : Septembre 2008
    Messages : 115
    Par défaut
    oui c'est bien ça, merci.
    C'est là que je me dis que ça parait si simple..et que ça l'est en effet^^.

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

Discussions similaires

  1. Réponses: 4
    Dernier message: 19/03/2015, 19h31
  2. [Algo] Trouver un arrangement ou une combinaison d'éléments
    Par Morvan Mikael dans le forum Algorithmes et structures de données
    Réponses: 16
    Dernier message: 20/04/2013, 12h46
  3. Réponses: 2
    Dernier message: 04/12/2006, 21h40
  4. Supprimer un élément d'un tableau
    Par CaptainChoc dans le forum Langage
    Réponses: 15
    Dernier message: 24/12/2002, 00h14
  5. Réponses: 3
    Dernier message: 16/12/2002, 17h12

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