Exercicio Calculadora 1(Classe Local)

0 respostas
Conrado

Preciso Alterar modificando de classe anonima para classe local
como comentarios fiz algumas alterações preciso saber se estou indo bem
até porque esta dando alguns erros aqui e estou tentando modificar.
só estou com dúvida no testa evento coloquei lá em baixo acho que fica melhor organizado
como seria este testa evento??

// 1Questao :smiley:
// Dado o tratamento de evento do botão login
// da interface grafica na forma de uma classe
// anonima, trasforme este tratamento para uma classe local.

import javax.swing.*;

import java.awt.GridLayout;

import java.awt.event.ActionEvent;

import java.awt.event.ActionListener;

import java.util.ArrayList;

public class AplicativoSwing extends JFrame{

private JPanel painel = null;
private JPanel painelCabec = null;
private JPanel painelDados = null;
private JPanel painelDados1 = null;
private JPanel painelRodape = null;
private JLabel	form = null;
private JLabel	rotulo = null;
private JTextField texto = null;
private JLabel	rotulo1 = null;
private JTextField texto1 = null;
private JLabel	rotulo2 = null;
private JTextField texto2 = null;
private JLabel	rotulo3 = null;
private JTextField texto3 = null;
private JLabel	erro = null;
private JButton botao = null;

private ArrayList lista;

public static void main (String args[]){
	AplicativoSwing tela = new AplicativoSwing("Revisão");
	tela.setVisible(true);
	tela.setDefaultCloseOperation(JFrame.EXIT_ON_CLOSE);
}


public AplicativoSwing(String titulo){
	super(titulo);
    setSize(300, 500);
 
	GridLayout gridLayout = new GridLayout();
	gridLayout.setRows(4);
	gridLayout.setColumns(1);
	painel = new JPanel();
	painel.setLayout(gridLayout);
	setContentPane(painel);

	painelCabec = new JPanel();
	painelDados = new JPanel();
	painelDados1 = new JPanel();
	painelRodape = new JPanel();
	form = new JLabel("Cadastro de Novo Usuário");
	rotulo = new JLabel("UserId");
	texto = new JTextField(10);
	rotulo1 = new JLabel("Password");
	texto1 = 	new JTextField(10);
	rotulo2 = new JLabel("Matrícula");
	texto2 = new JTextField(4);
	rotulo3 = new JLabel("Nome Completo");
	texto3 = new JTextField(50);
	erro = new JLabel();
	botao = new JButton("Login");
                           //operacao=newTrataEvento();

	lista = new ArrayList();
	painel.add(painelCabec);
	painel.add(painelDados);
	painel.add(painelDados1);
	painel.add(painelRodape);

	painelCabec.add(form);
	painelDados.add(rotulo);
	painelDados.add(texto);
	painelDados.add(rotulo1);
	painelDados.add(texto1);
	painelDados.add(rotulo2);
	painelDados.add(texto2);
	painelDados1.add(rotulo3);
	painelDados1.add(texto3);
	painelRodape.add(botao);
	painelRodape.add(erro);
	//botao.addActionListener(Operacao);
	
	botao.addActionListener(new ActionListener() {
			public void actionPerformed(ActionEvent evt){ 
				erro.setText("");
				if (evt.getActionCommand().equals("Login")) {
				int mat;
				try {
					mat = Integer.parseInt(texto2.getText());
					Usuario user = new Usuario(texto.getText(),
					texto1.getText(),mat,texto3.getText());
					String msg = "Usuário: "+ 
							user.getUserId()+" "+
							user.getPassword()+" "+
							user.getMat()+" "+
							user.getNome();
					JOptionPane.showMessageDialog(painel,msg, "Atenção",
								JOptionPane.INFORMATION_MESSAGE);
					lista.add(user);
					}
				catch (NumberFormatException e){
					erro.setText("Entre com números no campo matrícula");
					texto2.setText("");
					pack();
					}
				}
			}
	}); // fim classe interna anônima
	pack();
	setVisible(true);
	setDefaultCloseOperation(JFrame.EXIT_ON_CLOSE);

} // fim do construtor

} // fim da classe
class Usuario {

private String userId;
private String password;
private int mat;
private String nome;
private boolean isAdmin;

public boolean isAdmin() {
	return isAdmin;
}

public void setAdmin(boolean isAdmin) {
	this.isAdmin = isAdmin;
}
public int getMat() {
	return mat;
}

public void setMat(int mat) {
	this.mat = mat;
}

public String getNome() {
	return nome;
}

public void setNome(String nome) {
	this.nome = nome;
}
public String getPassword() {
	return password;
}

public void setPassword(String password) {
	this.password = password;
}

public String getUserId() {
	return userId;
}
public void setUserId(String userId) {
	this.userId = userId;
}
public Usuario(String userId, String password, int mat, String nome) {

	this.userId = userId;
	this.password = password;
	this.mat = mat;
	this.nome = nome;
}
public Usuario(int mat, String nome, String password, boolean admin) {

	this.password = password;
	this.mat = mat;
	this.nome = nome;
	this.isAdmin = admin;
}
public void imprime() {

//class testaEvento		
}

} // fim classe

Criado 2 de junho de 2009
Respostas 0
Participantes 1