Erro no metodo

2 respostas
B

Ola

Estou tentando desenvolver uma tela de login com o Gridbaglayout. O layout manager nao importa o que eu gostaria de saber é porque está dando o erro!

Construi um metodo add pra facilitar na hora de adicionar o componente, embora na depuraçao os valores estejam certos os 2 componentes saem um em cima do outro.
Quando eu faço pelo modo normal, isso é, sem usar o metodo add que construi sai certo.
Mas não consegui achar o que fiz errado no metodo ADD.
Abaixo está o codigo, quando tiverem um tempinho se alguem puder me ajudar agradeço.

public class Login extends JFrame{
		private JTextField nomeUsuario;
		private JTextField senhaUsuario;
	
		
	
	public Login(){
		JFrame frame = new JFrame();
	    Container container = frame.getContentPane();
	  
		nomeUsuario = new JTextField(10);
		senhaUsuario = new JTextField(10);
		
	    // Create the layout
	    GridBagLayout gbl = new GridBagLayout();
	    
	    // Set layout on container
	    container.setLayout(gbl);
	    
	    // Place a component at cell location (1,1)
	    GridBagConstraints gbc = new GridBagConstraints();
       
	    add(container, nomeUsuario, gbl, gbc, 1, 1, 0, 0);
            
	    add(container, senhaUsuario, gbl, gbc, 2, 2, 0, 0);

	    // Show the frame
	    frame.pack();
	    frame.setVisible(true);
	    frame.setDefaultCloseOperation(frame.EXIT_ON_CLOSE);		
	}
	 public static void add(
	    		Container container,
	    		Component c,
	    		GridBagLayout gbl,
	    		GridBagConstraints gbc,
	    		int x, int y, int w, int h)
	    	    {
	    		gbc.gridx = x;
	    		gbc.gridy = y;
	    		gbc.gridwidth = w;
	    		gbc.gridheight = h;
	    		gbl.setConstraints(c,gbc);
	    		container.add(c);
	    	    }
	public static void main(String[] args){
		new Login();
	}
		
	
}//public class login {

2 Respostas

thiago.correa

Usando o flowLayout rola

package com.rge.imobiliaria;

import java.awt.Component;
import java.awt.Container;
import java.awt.FlowLayout;
import java.awt.GridBagConstraints;
import java.awt.GridBagLayout;
import java.awt.LayoutManager;
import java.awt.event.ActionEvent;
import java.awt.event.ActionListener;

import java.util.regex.Matcher;
import java.util.regex.Pattern;

import javax.swing.JButton;
import javax.swing.JComboBox;
import javax.swing.JFrame;
import javax.swing.JOptionPane;
import javax.swing.JTextField;


public class TestesLog4J extends JFrame{
    
    private JTextField nomeUsuario;   
       private JTextField senhaUsuario;   
      
          
      
    public TestesLog4J(){
//       JFrame frame = new JFrame();   
       Container container = this.getContentPane();   
        
       nomeUsuario = new JTextField(10);   
       senhaUsuario = new JTextField(10);   
          
       // Create the layout   
       FlowLayout gbl = new FlowLayout();   
          
       // Set layout on container   
       container.setLayout(gbl);   
          
       // Place a component at cell location (1,1)   
       GridBagConstraints gbc = new GridBagConstraints();   
        
       add(container, nomeUsuario, gbl, gbc, 1, 1, 0, 0);   
              
       add(container, senhaUsuario, gbl, gbc, 2, 2, 0, 0);   
    
       // Show the frame   
       pack();   
       setVisible(true);   
       setDefaultCloseOperation(EXIT_ON_CLOSE);           
    }
    public static void add(   
               Container container,   
               Component c,   
               LayoutManager gbl,   
               GridBagConstraints gbc,   
               int x, int y, int w, int h)   
               {   
               gbc.gridx = x;   
               gbc.gridy = y;   
               gbc.gridwidth = w;   
               gbc.gridheight = h;   
//               gbl.setConstraints(c,gbc);   
               container.add(c);   
               }   


    public static void main(String[] args){
        new TestesLog4J();
    }
}
B

Valeu thiago.

Criado 15 de maio de 2009
Ultima resposta 18 de mai. de 2009
Respostas 2
Participantes 2