Colocar pra funcionar

4 respostas
valramos

Ola pessoal,

estou estudando Java e peguei alguns exemplos pra fazer.

e um cadastro simples. com inclusão, alteração, pesquisa e remoção!

segue o codigo:

import java.awt.Color;
import java.awt.event.ActionEvent;
import java.awt.event.ActionListener;

import javax.swing.BorderFactory;
import javax.swing.JButton;
import javax.swing.JFrame;
import javax.swing.JLabel;
import javax.swing.JPanel;
import javax.swing.JTextField;

@SuppressWarnings("serial")
public class TelaInclusao extends JFrame implements ActionListener {

	JTextField txt_nome;
	JTextField txt_telefone;
	JButton btn_salvar;
        JButton btn_cancelar;
	
	public TelaInclusao(){
		super("Cadastro");
		this.setBounds(0,0, 640, 480);
		this.setLayout(null);
		this.setDefaultCloseOperation(JFrame.EXIT_ON_CLOSE);
		
		/*Inicializa os componentes do painel, dentro do frame*/
		JPanel container = new JPanel();
		this.initialize(container);
		this.add(container);

		this.setVisible(true);
	}
	
	/**
	 * Inicializa os componentes do painel, dentro do frame
	 */
	public void initialize(JPanel p){
		p.setLayout(null);
		p.setBounds(20,20,340,120);
		p.setBorder(BorderFactory.createTitledBorder(BorderFactory.createLineBorder(Color.DARK_GRAY), "Inclusão"));
		
		//Rótulo do campo NOME
		JLabel lbl_nome = new JLabel("Nome:");
		lbl_nome.setBounds(20,20,100,20);
		p.add(lbl_nome);

		//campo NOME		
		txt_nome = new JTextField();
		txt_nome.setBounds(120,20,200,20); 
		p.add(txt_nome);

		//Rótulo do campo TELEFONE
		JLabel lbl_telefone = new JLabel("Telefone");
		lbl_telefone.setBounds(20, 50, 100, 20);
		p.add(lbl_telefone);
		
		//campo TELEFONE
		txt_telefone = new JTextField();
		txt_telefone.setBounds(120, 50, 200, 20);
		p.add(txt_telefone);
		
		//Botão SALVAR
		btn_salvar = new JButton("Salvar");
		btn_salvar.setBounds(120, 80, 95, 20);
		p.add(btn_salvar);
		
		//Botão CANCELAR
		btn_cancelar = new JButton("Cancelar");
		btn_cancelar.setBounds(225, 80, 95, 20);
		p.add(btn_cancelar);
		
	}

	public void actionPerformed(ActionEvent e) {

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

}
import java.util.ArrayList;
import java.util.Iterator;

public class CadastroClientes {

	private static int id_generator = 0;
	private static ArrayList<Cliente> database;

	private static void initialize() {
		if (CadastroClientes.database == null)
			CadastroClientes.database = new ArrayList<Cliente>();
	}

	/**
	 * Método que serve para incluir um cliente na lista
	 * 
	 * @param c
	 *            Cliente a ser incluído
	 * @see Cliente.java
	 */
	public static void incluir(Cliente c) {
		CadastroClientes.initialize();

		if (c == null)
			throw new NullPointerException(
					"Objeto Cliente nulo - método incluir!");

		c.setId(id_generator++);
		CadastroClientes.database.add(c);
	}

	/**
	 * Método que serve para remover um cliente na lista
	 * 
	 * @param c
	 *            Cliente a ser removido
	 * @see Cliente.java
	 */
	public static void remover(Cliente c) {
		CadastroClientes.initialize();

		c = CadastroClientes.encontrar(c.getId());
		if (c == null)
			throw new NullPointerException(
					"Objeto Cliente nulo - método remover!");

		CadastroClientes.database.remove(c);
	}

	/**
	 * Método que serve para consultar todos os clientes gravados
	 * 
	 * @return Cliente[] array contendo todos os clientes gravados
	 * @see Cliente.java
	 */
	public static Cliente[] listar() {
		return filtrar("%");
	}

	/**
	 * Método que serve para incluir um cliente na lista
	 * @param nome Parte do nome do cliente 
	 * @return Cliente[] array contendo todos os clientes gravados cujo nome contenham o nome dado 
	 * @see Cliente.java
	 */
	public static Cliente[] filtrar(String nome) {
		CadastroClientes.initialize();

		ArrayList<Cliente> filtro = new ArrayList<Cliente>();
		for (Iterator<Cliente> iterator = CadastroClientes.database.iterator(); iterator
				.hasNext();) {
			Cliente test = (Cliente) iterator.next();
			if (("%" + test.getNome()).contains(nome))
				filtro.add(test);
		}
		
		Object[] array = filtro.toArray();
		Cliente[] clientes = new Cliente[array.length];
		for (int i = 0; i < array.length; i++) {
			clientes[i] = (Cliente) array[i];
		}
		
		return clientes;
	}

	/**
	 * Método que imprime no console a lista com os nomes de todos os clientes
	 */
	public static void imprimir(){
		Cliente[] lista = CadastroClientes.listar();
		String print = "{";
		String sep = "";
		for (int i = 0; i < lista.length; i++) {
			print += sep + lista[i];
			sep = ", ";
		}
		print +="}";
		System.out.println(print);
	}
	
	private static Cliente encontrar(int id) {
		Cliente cliente = null;
		boolean found = false;
		for (Iterator<Cliente> iterator = CadastroClientes.database.iterator(); iterator
				.hasNext()
				&& !found;) {
			Cliente c = (Cliente) iterator.next();
			found = (c.getId() == id);
			cliente = (found) ? c : null;
		}
		return cliente;
	}
}

4 Respostas

Gustavo_Sperandio

E sua duvida é?

valramos

como cadastar o cliente pegando os textos digitados

Gustavo_Sperandio

Seu método incluir esta funcionando? e o método de imprimir esta dando algum resultado?

valramos

ta funcionando!

deixa pra la…

Obrigado pela paciência e pela tentativa de ajudar…

Grande Abraço…

?Programação orientada a objetos é uma péssima idéia, que só poderia ter nascido na Califórnia.?
Edsger Dijkstra

Criado 29 de março de 2011
Ultima resposta 29 de mar. de 2011
Respostas 4
Participantes 2