Foros del Web » Programación para mayores de 30 ;) » Java »

formateo de decimales

Estas en el tema de formateo de decimales en el foro de Java en Foros del Web. hola tios, como puedo hacer para que en una caja de texto (JTextField o JFormattedTextField) detecte que se han introducido dos numeros, y escriba una ...
  #1 (permalink)  
Antiguo 01/02/2006, 14:21
Avatar de sith  
Fecha de Ingreso: julio-2003
Ubicación: Sevilla
Mensajes: 333
Antigüedad: 20 años, 9 meses
Puntos: 0
formateo de decimales

hola tios, como puedo hacer para que en una caja de texto (JTextField o JFormattedTextField) detecte que se han introducido dos numeros, y escriba una "," y dos números más y no permita más la escritura
  #2 (permalink)  
Antiguo 06/02/2006, 04:32
Avatar de pyanqn  
Fecha de Ingreso: noviembre-2005
Mensajes: 331
Antigüedad: 18 años, 5 meses
Puntos: 8
JFormattedTextField

Podes usar un campo JFormattedTextField, es como un JTextField + un decorador.

deberias utilizar una mascara como la siguiente: ##,##
algo así:

MaskFormatter mymasck = new MaskFormatter(“##,##”); //mascara
mymasck.setPlaceholderCharacter('_'); //simbolo en el lugar a completar
JFormattedTextField micampo = new JformattedTextField(mymasck);

Esta es la idea, deberias ver __,__ en la pantalla.
  #3 (permalink)  
Antiguo 06/02/2006, 22:09
Avatar de stock  
Fecha de Ingreso: junio-2004
Ubicación: Monterrey NL
Mensajes: 2.390
Antigüedad: 19 años, 10 meses
Puntos: 53
yo usaria la clase DecimalFormat, a la cual tu le especcificas el formato con el cual quieres que te ponga el numero, por ejemplo esto te generaria una salida asi:

43214.346543 -> $43,214.347


awesome
Código PHP:
           double value 43214.346543;
        
String pattern "$###,###.###";
        
DecimalFormat myFormatter = new DecimalFormat(pattern);
        
String output myFormatter.format(value);
        
System.out.println(value "  " pattern "  " output); 
have funnnnn
Atención: Estás leyendo un tema que no tiene actividad desde hace más de 6 MESES, te recomendamos abrir un Nuevo tema en lugar de responder al actual.
Respuesta




La zona horaria es GMT -6. Ahora son las 08:31.