import java.awt.event.*;
import java.awt.*;
import javax.swing.*;
import javax.swing.text.*; //contiene el metodo MaskFormatter
import java.text.*; //Contiene el metodo ParseException
public class JFormatted extends JFrame implements ActionListener
{
JLabel lbl;
JTextArea txt;
JFormattedTextField txts;
JButton btn;
MaskFormatter mascara; //Declare la mascara (lo olvidaste)
JScrollPane scroll;
public JFormatted()
{
setSize(300,180);
setResizable(false);
setTitle("Que Tipo de # es ??");
setDefaultCloseOperation(WindowConstants.EXIT_ON_CLOSE);
getContentPane().setLayout(null);
lbl = new JLabel("Numero");
lbl.setBounds(15,15,50,23);
getContentPane().add(lbl);
txt = new JTextArea();
txt.setBounds(15,50,250,80);
getContentPane().add(txt);
txt.setFont(new Font("monospaced",4,12));
scroll = new JScrollPane(txt);
scroll.setBounds(15,50,250,80);
getContentPane().add(scroll);
btn = new JButton("Try");
btn.setBounds(210,15,75,23);
btn.addActionListener(this);
getContentPane().add(btn);
gettxts(); //Llame al metodo
}
private JFormattedTextField gettxts()
{
if (txts == null)
{ //si no esta vacia lo intenta
try
{
mascara = new MaskFormatter("*************"); //solo se admiten 13 caracteres
mascara.setValidCharacters("1234567890"); //solo caracteres numericos
}
catch (ParseException e1)
{
e1.printStackTrace(); //por si hay error imprime el error
}
txts = new JFormattedTextField(mascara);//se asigna
txts.setFocusLostBehavior(3); //se le asigna el foco (no es necesario)
getContentPane().add(txts); //agregue el txts al forml (lo olvidaste)
txts.setBounds(new java.awt.Rectangle(70,20,120,16)); //setBounds .... (lo ajuste de acuerdo al form)
}
return txts; //retorna la caja de text formateada
}
public void actionPerformed(ActionEvent e)
{
try{
//String result="";
String a = txts.getText();
/*double numero=Double.parseDouble(txts.getText());
if(numero%2 == 0)
{
txt.setText("");
result = "El Numero es PAR";
}
else
{
txt.setText("");
result="El Numero es IMPAR";
}*/
if (a.length()>=13) //Raro
{
JOptionPane.showMessageDialog(this,"Rellene ");
}
txt.append(a);
}
catch(NumberFormatException r)
{
}
}
public static void main(String args[])
{
new JFormatted().setVisible(true);
}
}