All pastes #1468718 Raw Edit

Tela de cadastro simples

public java v1 · immutable
#1468718 ·published 2009-06-21 13:08 UTC
rendered paste body
/* * Cadastro.java *  * Criado em 20 de junho de 2009 */package pacote;import java.awt.BorderLayout;import java.awt.Dimension;import java.awt.FlowLayout;import java.awt.GridLayout;import javax.swing.JButton;import javax.swing.JFrame;import javax.swing.JLabel;import javax.swing.JPanel;import javax.swing.JTextField;import javax.swing.SwingUtilities;/** * A classe <code>Cadastro</code> mostra uma tela simples, sem funcionalidades, * para um cadastro que pede nome e CPF. *  * @author João Henrique Berg dos Santos * */public class Cadastro extends JFrame {	/**	 * O <code>serialVersionUID</code> é usado na serialização de objetos. 	 */	private static final long serialVersionUID = 2669706293215695509L;	private JTextField nome;	private JTextField cpf;	private JButton ok;	/**	 * Cria uma instância da classe <code>Cadastro</code>.	 */	public Cadastro() {		super("Cadastro");		initComponents();	}		/**	 * O método <code>initComponents</code> inicializa e insere os componentes na 	 * janela (GUI - Graphical User Interface). O segredo está em usar vários 	 * JPanel's com gerenciadores de layout diferentes de forma a montar uma GUI 	 * adequada. Para iniciantes a dica é sempre desenhar a tela desejada em uma 	 * folha de papel e traçar linhas horizontais e verticais de forma a ter uma 	 * idéia de como separar os componentes em grupos que possam ser inseridos em 	 * algum JPanel. Neste ponto escolhe-se quais os gerenciadores de layout cada 	 * JPanel terá de forma a obter o resultado final.	 * A janela também possui um gerenciador de layout. Por padrão um JFrame tem 	 * no BorderLayout o seu gerenciador de layout. Isto pode ser alterado mas 	 * não foi feito aqui. Este exemplo é feito da seguinte forma:	 * O JFrame usa um BorderLayout, o qual possui cinco partes, NORTH, EAST, 	 * WEST, SOUTH e CENTER. Apenas as partes CENTER e SOUTH são usadas aqui.Em 	 * CENTER é inserido um JPanel com gerenciador de layout FlowLayout (linha 68) 	 * e neste JPanel dois outros JPanel's com GridLayout como gerenciador de 	 * layout. Nestes são inseridos os JLabel's (linhas 70 e 71) e JTextField's 	 * (linhas 75 e 78) Os JTextField's são ajustados para terem um determinado 	 * tamanho (linhas 74 e 77). Na posição SOUTH do JFrame é inserido um JPanel 	 * que usa FlowLayout com posicionamento centralizado dos componentes 	 * (linha 81).	 */	public void initComponents() {		setDefaultCloseOperation(EXIT_ON_CLOSE);		JPanel panel1 = new JPanel(new FlowLayout(FlowLayout.LEADING, 5, 5));		JPanel panel2 = new JPanel(new GridLayout(2, 1, 5, 5));		panel2.add(new JLabel("Nome:"));		panel2.add(new JLabel("CPF:"));		JPanel panel3 = new JPanel(new GridLayout(2, 1, 5, 5));		nome = new JTextField();		nome.setPreferredSize(new Dimension(250, 25));		panel3.add(nome);		cpf = new JTextField();		cpf.setPreferredSize(new Dimension(250, 25));		panel3.add(cpf);		panel1.add(panel2);		panel1.add(panel3);		JPanel panel4 = new JPanel(new FlowLayout(FlowLayout.CENTER));		ok = new JButton("Ok");		ok.setPreferredSize(new Dimension(50, 25));		panel4.add(ok);		getContentPane().add(panel1, BorderLayout.CENTER);		getContentPane().add(panel4, BorderLayout.SOUTH);		pack();		setVisible(true);	}	/**	 * O método <code>main</code> é o ponto de entrada de uma aplicação Java.	 * 	 * @param args Os argumentos da linha de comando.	 */	public static void main(String[] args) {		SwingUtilities.invokeLater(new Runnable() {			@Override			public void run() {				new Cadastro();			}					});	}}