alguem sabe como posso fazer para transformar meu textField em uma barra encima de minha calculadora???, naum ficar no espaço de um botão,
e se existir, há algum campo que seja apenas de saida de dados, tipo na calculadora a pessoa so pderia apertar os botoes para aparecer resultados ou numeros de uma operaçao, mais com o textFiel ele pode escrever qualquer coisa, tem como resolver isso tambem?
so que agora gostaria de ajuda para implementar o actionListener..., como faço para que quando o cara apertar o botão 7 aparece 7 no textField, etc.., e depois como faço para executar as operações ??????
F
fcardaoPJ
Cara, estou tentando implementar o actionListener na sua calculadora, e para isso na hora do clique de um botão o texto que estiver no botão deve ser pego de alguma forma…
L
lpugaPJ
pois é, naum sei como fazer isso, ja faz horas que estou tentando, mais nada funciona…, acho que tem que fazer alguma coisa com o mouseClicked , mais naum sei usa-lo !!!
E
eaduartePJ
1) Retire a declaração do JTextField do construtor e coloque no corpo da classe, veja:
deu certo, agora estou tendando implementar as operações … veja como ficou meu codigo, e eu gostaria de saber se quando eu colocar o ponto ele vai interder que é um numero quebrado, decimal??? tipo 12.36 (doze ponto trinta e dois) ??? veja como esta meu codigo por enquanto !
if (((JButton) event.getSource()).getText().equals("0")) {
textField.setText(textField.getText() + "0");
} else if (((JButton) event.getSource()).getText().equals("1")) {
textField.setText(textField.getText() + "1");
} else if (((JButton) event.getSource()).getText().equals("2")) {
textField.setText(textField.getText() + "2");
} else if (((JButton) event.getSource()).getText().equals("3")) {
textField.setText(textField.getText() + "3");
} else if (((JButton) event.getSource()).getText().equals("4")) {
textField.setText(textField.getText() + "4");
} else if (((JButton) event.getSource()).getText().equals("5")) {
textField.setText(textField.getText() + "5");
} else if (((JButton) event.getSource()).getText().equals("6")) {
textField.setText(textField.getText() + "6");
} else if (((JButton) event.getSource()).getText().equals("7")) {
textField.setText(textField.getText() + "7");
} else if (((JButton) event.getSource()).getText().equals("8")) {
textField.setText(textField.getText() + "8");
} else if (((JButton) event.getSource()).getText().equals("9")) {
textField.setText(textField.getText() + "9");
} else if (((JButton) event.getSource()).getText().equals("Limpar")){
textField.setText("");
} else if (((JButton) event.getSource()).getText().equals(".")) {
textField.setText(textField.getText() + ".");
}
L
lpugaPJ
alguem tem alguma ideia de compo posso faze as operaçoes de minha calculadora, ja tentei de todo geito e naum consegui!!!
H
HSNPJ
Cara, a melhor forma de fazer uma calculadora bonitinha e com código legível é usando uma máquina de estados. Você tem que saber se as teclas que o usuário está digitando são os operadores (+, -, *, /, …), se são os dígitos do 1º número, do 2º número, o que acontece se o usuário digitar um número, apertar + e depois =, se ele inserir um número, digitar *, - e =…
Faz uma diagrama cobrindo essas possibilidades para depois começar a codificar a lógica. Você já consegue pegar e reconhecer as teclas, agora só tem que interpretar os comandos do usuário. Faz uma reza pro São Google, que ele acha uns tutoriais para você entender de quê estou falando.
Até mais,
L
lpugaPJ
vcs saberiam me ajudar a implementar dessa forma?
...
else if (((JButton) event.getSource()).getText().equals(".")) {
textField.setText(textField.getText() + ".");
} else if (((JButton)event.getSource()).getText().equals("+")){
String valor1 = textField.getText();
textField.setText("");
} else if (((JButton)event.getSource()).getText().equals("-")){
String valor1 = textField.getText();
textField.setText("");
} else if (((JButton)event.getSource()).getText().equals("*")){
String valor1 = textField.getText();
textField.setText("");
} else if (((JButton)event.getSource()).getText().equals("/")){
String valor1 = textField.getText();
textField.setText("");
} else if (((JButton)event.getSource()).getText().equals("=")){
switch(...)
case ... (((JButton)event.getSource()).getText().equals("+")):
faz soma
case ... (((JButton)event.getSource()).getText().equals("-")):
faz subtração
case ... (((JButton)event.getSource()).getText().equals("*")):
faz multiplicação
case ... (((JButton)event.getSource()).getText().equals("/")):
faz divisão
}
}
assim, quando o cara digita um numero, este é salvo, e se apaga atela, depois ele digita outro numero, e aperta igual, ai verifica se foi uma adição , faz tal coisa, se foi subtração, faz outra, e assim por diante !