Olá, pessoal, eu estou com um trabalho para fazer, mas estou com algumas duvidas, eu tenho que montar uma calculadora, com uma tela de login, o senha ja é definida dentro do código, pós estamos no basico ainda. Eu preciso, que assim que eu executar o programa, ele feche a tela de login e abre a calculadora. A tela de login eu ja fiz e tenho pronta, e a calculadora tb, como q eu faria para fazer isso?
Ah, a minha calculadora, ela está com alguns problemas, quando eu tento fazer uma operão com mais de tres valores, esta dando resultados diferentes, e t quando eu tento fazer uma operação com um resultado, tb esta dando problema.
Alguem ae poderia me ajundar?
ccódigo da tela de login:
[code]import java.awt.;//importa as classes do pacote “awt”
import java.awt.event.;//importa as classes do pacote “event”
import javax.swing.*;//importa as classes do pacote “swing”
class Exemplo0905 extends JFrame implements ActionListener{//inicia a classe herdando métodos de “JFrame” e implementando a interface “ActionListener”
JLabel label1,label2;//declara os objetos “JLabel”
JTextField t1;//declara o objeto “t1” da classe “JTextField”
JPasswordField p1;//declara o objeto “p1” da classe “JPasswordField”
public static void main(String args[]){//inicia o método principal
JFrame janela = new Exemplo0905();//instancia o objeto "janela" a partir da classe atual "Exemplo0905"
janela.setUndecorated(true);//retira a decoração da janela
janela.getRootPane().setWindowDecorationStyle(JRootPane.FRAME);//configura a decoração da janela para ser a padrão JAVA
janela.setDefaultCloseOperation(JFrame.EXIT_ON_CLOSE);//configura a operação de fechar ao clicar no botão do canto superior direito da janela
janela.setVisible(true);//configura a janela para ser apresentada
}//fecha o método principal
Exemplo0905(){//cria o método construtor
setTitle("Verifica Senha");//configura o tÃtulo da janela
setBounds(200,50,350,85);//configura o tamanho da janela e posição dela na tela
getContentPane().setBackground(new Color(150,150,150));//configura a cor de fundo da janela
getContentPane().setLayout(new GridLayout(2,2));//configura o layout da janela
label1 = new JLabel("Digite a Senha:");//instancia o objeto "label1" e configura o texto que será apresentado
label1.setForeground(Color.black);//configura a cor da fonte em "label1"
label2 = new JLabel("Validação:");//instancia o objeto "label2" e configura o texto que será apresentado
label2.setForeground(Color.black);//configura a cor da fonte em "label2"
label1.setFont(new Font("",Font.BOLD,14));//configura a fonte para ser apresentada em negrito e com tamanho 14
label2.setFont(new Font("",Font.BOLD,14));
t1 = new JTextField();//instancia a caixa de texto "t1"
t1.setForeground(Color.red);//cor da fonte na caixa de texto
p1 = new JPasswordField();//instancia o objeto "p1"
p1.setEchoChar("?");//configura o caracter que será apresentado quando o usuário digitar alguma coisa em "p1"
p1.addActionListener(this);//registra "p1"
getContentPane().add(label1);//adiciona o label1 na janela
getContentPane().add(p1);//adiciona "p1" Ã janela
getContentPane().add(label2);//adiciona "label2" Ã janela
getContentPane().add(t1);//adiciona "t1" Ã janela
}//fecha o método construtor
public void actionPerformed(ActionEvent e){//inicia o método "actionPerformed" (ele é obrigatório já que estamos implementando a interface ActionListener na declaração da classe acima.
if(new String(p1.getPassword()).equals("JAVA"))//se a senha digitada for igual a palavra "JAVA" em maiúsculas
t1.setText("Senha Valida");//escreve a mensagem em "t1"
else//senão
t1.setText("Senha Invalida");//escreve essa mensagem em "t1"
}//fecha o método
}//fecha a classe
[/code]
Codigo da calculadora:
[code]import java.awt.;//importa as classes do pacote “awt”
import java.awt.event.;//importa as classes do pacote “event”
import javax.swing.*;//importa as classes do pacote “swing”
class Exemplo0902 extends JFrame implements ActionListener{
JButton b1,b2,b3,b4,b5,b6,b7,b8,b9,b0,bsoma,bmult,bdivi,bsub,bigual,blimpa,bponto;
JTextField tela;
private char op,opant;
private int op1=0;
private String num;
private String numtela="";
private double ac=0, a=0,b=0,resultado=0;
public static void main(String args[]){
JFrame janela = new Exemplo0902();
janela.setUndecorated(true);
janela.getRootPane().setWindowDecorationStyle(JRootPane.FRAME);
janela.setDefaultCloseOperation(JFrame.EXIT_ON_CLOSE);
janela.setVisible(true);
}
Exemplo0902(){
setTitle("Calculadora");
setBounds(200,200,200,200);
setLocation(100,100);
getContentPane().setBackground(Color.black);
getContentPane().setLayout(new FlowLayout());
b1 = new JButton("1");
b1.addActionListener(this);
b2 = new JButton("2");
b2.addActionListener(this);
b3 = new JButton("3");
b3.addActionListener(this);
b4 = new JButton("4");
b4.addActionListener(this);
b5 = new JButton("5");
b5.addActionListener(this);
b6 = new JButton("6");
b6.addActionListener(this);
b7 = new JButton("7");
b7.addActionListener(this);
b8 = new JButton("8");
b8.addActionListener(this);
b9 = new JButton("9");
b9.addActionListener(this);
b0 = new JButton("0");
b0.addActionListener(this);
bsoma = new JButton("+");
bsoma.addActionListener(this);
bsub = new JButton("-");
bsub.addActionListener(this);
bmult = new JButton("x");
bmult.addActionListener(this);
bdivi = new JButton("/");
bdivi.addActionListener(this);
blimpa = new JButton("C");
blimpa.addActionListener(this);
bigual = new JButton("=");
bigual.addActionListener(this);
bponto = new JButton(".");
bponto.addActionListener(this);
tela = new JTextField(10);
getContentPane().add(tela);
getContentPane().add(blimpa);
getContentPane().add(b9);
getContentPane().add(b8);
getContentPane().add(b7);
getContentPane().add(bdivi);
getContentPane().add(b4);
getContentPane().add(b5);
getContentPane().add(b6);
getContentPane().add(bmult);
getContentPane().add(b1);
getContentPane().add(b2);
getContentPane().add(b3);
getContentPane().add(bsub);
getContentPane().add(b0);
getContentPane().add(bponto);
getContentPane().add(bigual);
getContentPane().add(bsoma);
}
public void actionPerformed(ActionEvent e) {
if (e.getSource() == blimpa){
tela.setText("");
numtela="";
op1=0;
ac=0;
resultado=0;
}
opant=op;
if ((e.getSource() == bsoma) || (e.getSource() == bsub) || (e.getSource() == bmult) || (e.getSource() == bdivi) ){
try{
a = Double.parseDouble( numtela );
if(op1==0) ac = a;
else{
if (opant=='+') ac=ac+b;
if (opant=='*') ac=ac*b;
if (opant=='/') ac=ac/b;
if (opant=='-') ac=ac-b;
}
if (e.getSource() == bsoma){
tela.setText("");
numtela="";
op = '+';
op1++;
System.out.println("ac="+ac);
System.out.println("result="+resultado);
System.out.println("a="+a);
}
else if (e.getSource() == bsub){
tela.setText("");
numtela="";
op = '-';
op1++;
System.out.println("ac="+ac);
System.out.println("result="+resultado);
System.out.println("a="+a);
}
else if (e.getSource() == bdivi){
tela.setText("");
numtela="";
op = '/';
op1++;
System.out.println("ac="+ac);
System.out.println("result="+resultado);
System.out.println("a="+a);
}
else if (e.getSource() == bmult){
tela.setText("");
numtela="";
op = '*';
op1++;
System.out.println("ac="+ac);
System.out.println("result="+resultado);
System.out.println("a="+a);
}
b=a;
}
catch(NumberFormatException erro){
tela.setText("Erro");
return;
}
}
if ((e.getSource() == b1)||(e.getSource() == b2)||(e.getSource() == b3)|| (e.getSource() == b4)||(e.getSource() == b5)|| (e.getSource() == b6)||(e.getSource() == b7)||(e.getSource() == b8)||(e.getSource() == b9)|| (e.getSource() == b0)||(e.getSource() == bponto)){
if (e.getSource() == b1) num = "1";
else if (e.getSource() == b2) num = "2";
else if (e.getSource() == b3) num = "3";
else if (e.getSource() == b4) num = "4";
else if (e.getSource() == b5) num = "5";
else if (e.getSource() == b6) num = "6";
else if (e.getSource() == b7) num = "7";
else if (e.getSource() == b8) num = "8";
else if (e.getSource() == b9) num = "9";
else if (e.getSource() == b0) num = "0";
else if (e.getSource() == bponto) num = ".";
numtela=numtela+num;
tela.setText(""+numtela);
}
if (e.getSource() == bigual){
try{
if (op == '+'){
a = Double.parseDouble( numtela );
if(op1==0) ac = a;
else {
resultado = ac + a;
ac = resultado;
}
tela.setText(""+ac);
System.out.println("ac="+ac);
System.out.println("result="+resultado);
System.out.println("a="+a);
}
else if (op == '-'){
a = Double.parseDouble( numtela );
if(op1==0) ac = a;
else {
resultado = ac - a;
ac = resultado;
}
tela.setText(""+resultado);
System.out.println("ac="+ac);
System.out.println("result="+resultado);
System.out.println("a="+a);
}
else if (op == '/'){
a = Double.parseDouble( numtela );
if(op1==0) ac = a;
else {
resultado = ac / a;
ac = resultado;
}
tela.setText(""+resultado);
System.out.println("ac="+ac);
System.out.println("result="+resultado);
System.out.println("a="+a);
}
else if (op =='*'){
a = Double.parseDouble( numtela );
if(op1==0) ac = a;
else {
resultado = ac * a;
ac = ac * a;
}
tela.setText(""+resultado);
System.out.println("ac="+ac);
System.out.println("result="+resultado);
System.out.println("a="+a);
}
numtela = tela.getText();
resultado = 0;
}
catch(NumberFormatException erro){
tela.setText("Erro");
return;
}
}
}
} [/code]