
Ayuda con jtextfield
Publicado por Carlos (2 intervenciones) el 04/12/2013 19:44:38
Hola, buenas, Primero de todo presentarme.
Me llamo Carlos y estudio como usar Java como pasatiempo aunque intento ser bastante serio en ello.
Bien, estoy intentando hacer un programa bastante bàsico, (calculadora) para terminar de tener claro los conceptos bàsicos que swing.
El problema està en que en el metodo actionPerformed he incluido un par de datos para ver si responde el listener llenando el JtextField, pero no me lo hace de ningún modo.
Seguro que es una chorrada, si alguien puede hecharme un cable lo agradeceria muchisimo.
import java.awt.BorderLayout;
import java.awt.GridLayout;
import java.awt.event.ActionEvent;
import java.awt.event.ActionListener;
import javax.swing.*;
public class calc extends JFrame implements ActionListener {
JButton nou = new JButton("9");
JButton vuit = new JButton("8");
JButton set = new JButton("7");
JButton sis = new JButton("6");
JButton cinc = new JButton("5");
JButton quatre = new JButton("4");
JButton tres = new JButton("3");
JButton dos = new JButton("2");
JButton un = new JButton("1");
JButton zero = new JButton("0");
JButton mes = new JButton("+");
JButton menys = new JButton("-");
JButton mem = new JButton("Ans");
JButton borrar = new JButton("Borrar");
JButton igual = new JButton("=");
JTextField texte= new JTextField("0",30);
public calc (){
super("Calculadora Carlos. Congrats!");
setSize(400,400);
setDefaultCloseOperation(JFrame.EXIT_ON_CLOSE);
JPanel num = new JPanel();
JPanel op = new JPanel();
JPanel tex = new JPanel();
GridLayout numeros = new GridLayout(4,3,5,5);
num.setLayout(numeros);
num.add(nou);
num.add(vuit);
num.add(set);
num.add(sis);
num.add(cinc);
num.add(quatre);
num.add(tres);
num.add(dos);
num.add(un);
num.add(zero);
GridLayout operacions = new GridLayout(5,1,5,5);
op.setLayout(operacions);
op.add(mes);
op.add(menys);
op.add(mem);
op.add(borrar);
op.add(igual);
GridLayout text = new GridLayout(3,4,5,5);
tex.setLayout(text);
tex.add(texte);
getContentPane().add(num, BorderLayout.CENTER);
getContentPane().add(tex, BorderLayout.NORTH);
getContentPane().add(op, BorderLayout.EAST);
setVisible(true);
}
public void actionPerformed(ActionEvent evt) {
Object A=evt.getSource();
if(A==un){
texte.setText("1"); }
else{
texte.setText("2");
}
}
public static void main(String[] args) {
calc carlos=new calc();
}
}
Me llamo Carlos y estudio como usar Java como pasatiempo aunque intento ser bastante serio en ello.
Bien, estoy intentando hacer un programa bastante bàsico, (calculadora) para terminar de tener claro los conceptos bàsicos que swing.
El problema està en que en el metodo actionPerformed he incluido un par de datos para ver si responde el listener llenando el JtextField, pero no me lo hace de ningún modo.
Seguro que es una chorrada, si alguien puede hecharme un cable lo agradeceria muchisimo.
import java.awt.BorderLayout;
import java.awt.GridLayout;
import java.awt.event.ActionEvent;
import java.awt.event.ActionListener;
import javax.swing.*;
public class calc extends JFrame implements ActionListener {
JButton nou = new JButton("9");
JButton vuit = new JButton("8");
JButton set = new JButton("7");
JButton sis = new JButton("6");
JButton cinc = new JButton("5");
JButton quatre = new JButton("4");
JButton tres = new JButton("3");
JButton dos = new JButton("2");
JButton un = new JButton("1");
JButton zero = new JButton("0");
JButton mes = new JButton("+");
JButton menys = new JButton("-");
JButton mem = new JButton("Ans");
JButton borrar = new JButton("Borrar");
JButton igual = new JButton("=");
JTextField texte= new JTextField("0",30);
public calc (){
super("Calculadora Carlos. Congrats!");
setSize(400,400);
setDefaultCloseOperation(JFrame.EXIT_ON_CLOSE);
JPanel num = new JPanel();
JPanel op = new JPanel();
JPanel tex = new JPanel();
GridLayout numeros = new GridLayout(4,3,5,5);
num.setLayout(numeros);
num.add(nou);
num.add(vuit);
num.add(set);
num.add(sis);
num.add(cinc);
num.add(quatre);
num.add(tres);
num.add(dos);
num.add(un);
num.add(zero);
GridLayout operacions = new GridLayout(5,1,5,5);
op.setLayout(operacions);
op.add(mes);
op.add(menys);
op.add(mem);
op.add(borrar);
op.add(igual);
GridLayout text = new GridLayout(3,4,5,5);
tex.setLayout(text);
tex.add(texte);
getContentPane().add(num, BorderLayout.CENTER);
getContentPane().add(tex, BorderLayout.NORTH);
getContentPane().add(op, BorderLayout.EAST);
setVisible(true);
}
public void actionPerformed(ActionEvent evt) {
Object A=evt.getSource();
if(A==un){
texte.setText("1"); }
else{
texte.setText("2");
}
}
public static void main(String[] args) {
calc carlos=new calc();
}
}
Valora esta pregunta


0