Partage
  • Partager sur Facebook
  • Partager sur Twitter

Elements automatiquement centré

Sujet résolu
    3 décembre 2010 à 14:37:02

    Bonjour,

    voilà j'ai un soucis, j'essaye éperduement d'utiliser le GridBagLayout à partir de très bon tutoriels tel que :

    - lien
    - lien

    j'ai commencé a saisir son utilité, cependant je suis incapable de tester ce "bidule" car :

    les éléments que j'ajoute sont systématiquement centré sur ma frame. au lieu de respecter les gridx,y etc ...

    aidez moi svp :/
    • Partager sur Facebook
    • Partager sur Twitter
      3 décembre 2010 à 17:00:21

      Escusez moi,

      voici mon code, juste en exemple.

      public class Interface {
      
      	private JFrame jFrame = null;  //  @jve:decl-index=0:visual-constraint="505,61"
      	
      	private JButton btnLeft = new JButton("btnGauche");
      	private JButton btnRight = new JButton("btnDroit");
      	private JButton btnValidate = new JButton("btnValider");
      	
      	private JLabel lblLeft = new JLabel("labelGauche");
      	private JLabel lblRight = new JLabel("labelDroit");
      	
      	private JPanel panelLeft = new JPanel();
      	private JPanel panelRight = new JPanel();
      	
      	private JScrollPane jspLeft = new JScrollPane(panelLeft);
      	private JScrollPane jspRight = new JScrollPane(panelRight);
      	
      	/**
      	 * This method initializes jFrame	
      	 * 	
      	 * @return javax.swing.JFrame	
      	 */
      	private JFrame getJFrame() {
      		
      			jFrame = new JFrame();
      			jFrame.setSize(new Dimension(438, 376));
      			LenthComponents();
      
      			jFrame.setLayout(new GridBagLayout());
      			GridBagConstraints gbc = new GridBagConstraints();
      			
      			// premier element
      			gbc.gridx = 0;
      			gbc.gridy = 0;
      			gbc.anchor = GridBagConstraints.LINE_START;
      			gbc.gridwidth =1;
      			gbc.gridheight = 1;
      			gbc.insets = new Insets(10, 15, 0, 0);
      			jFrame.add(btnLeft, gbc);
      			
      			//deuxieme
      			gbc.gridx = 1;
      			gbc.gridy = 0;
      			gbc.gridwidth = GridBagConstraints.REMAINDER;
      			gbc.gridheight = 1;
      			gbc.insets = new Insets(10, 15, 0, 0);
      			jFrame.add(btnRight, gbc);
      			
      			//troisieme
      			gbc.gridx = 0;
      			gbc.gridy = 1;
      			gbc.anchor = GridBagConstraints.LINE_START;
      			gbc.gridwidth = GridBagConstraints.REMAINDER;
      			gbc.gridheight = 1;
      			gbc.insets = new Insets(10, 15, 0, 0);
      			jFrame.add(lblLeft, gbc);
      		
      		return jFrame;
      	}	
      	private void LenthComponents(){
      		
      		btnRight.setPreferredSize(btnValidate.getPreferredSize());
      		btnLeft.setPreferredSize(btnValidate.getPreferredSize());
      		btnLeft.setMinimumSize(btnValidate.getMinimumSize());
      		
      		lblLeft.setPreferredSize(lblRight.getPreferredSize());
      		lblLeft.setMinimumSize(lblRight.getMinimumSize());
      		
      	}
      	
      }
      


      sur le 3eme élément j'ai bien définit gridy = 1 et gridx =0, et pourtant les 3 éléments se suivent de gauche a droite, et centré dans la frame.

      j'ai recopier mot pour mot le tuto "http://bbclone.developpez.com/fr/java/tutoriels/uiswing/gridbaglayout/?page=page_3" , pour tester juste pour voir ou était le problème.

      et au lieu d'avoir la fenêtre a la fin du tuto toute belle et propre, j'ai tous les éléments centrés sur ma frame. il ne prend même pas en compte les marges.

      merci d'avance.
      • Partager sur Facebook
      • Partager sur Twitter
        14 décembre 2010 à 9:14:38

        j'ai résolu mon problème en installant netbeans et en se servant le l'IG.

        • Partager sur Facebook
        • Partager sur Twitter

        Elements automatiquement centré

        × Après avoir cliqué sur "Répondre" vous serez invité à vous connecter pour que votre message soit publié.
        × Attention, ce sujet est très ancien. Le déterrer n'est pas forcément approprié. Nous te conseillons de créer un nouveau sujet pour poser ta question.
        • Editeur
        • Markdown