jtextArea para numeros help me
Publicado por stiven (1 intervención) el 16/07/2021 20:17:50
ayuda por favor
Valora esta pregunta


0
import java.awt.event.KeyEvent;
import java.awt.event.KeyListener;
import javax.swing.BorderFactory;
import javax.swing.JFrame;
import javax.swing.JPanel;
import javax.swing.JTextArea;
import javax.swing.SwingUtilities;
public class SoloNumeros extends JFrame{
private JTextArea areaNumeros;
public SoloNumeros() {
areaNumeros = new JTextArea(10, 20);
areaNumeros.addKeyListener(new AceptarSoloNumeros());
JPanel pnPrincipal = new JPanel();
pnPrincipal.add(areaNumeros);
pnPrincipal.setBorder(BorderFactory.createEmptyBorder(25, 25, 25, 25));
setContentPane(pnPrincipal);
setTitle("Solo números");
setDefaultCloseOperation(JFrame.EXIT_ON_CLOSE);
pack();
setLocationRelativeTo(null);
setVisible(true);
}
private class AceptarSoloNumeros implements KeyListener {
@Override
public void keyTyped(KeyEvent e) {
//Recogemos caracter introducido
char caracter = e.getKeyChar();
//Comprobamos si es un número
switch(caracter) {
case '1':
case '2':
case '3':
case '4':
case '5':
case '6':
case '7':
case '8':
case '9':
case '0':
//Es número, lo aceptamos
areaNumeros.append(Character.toString(caracter));
default:
//¡¡No es número!! Lo rechazamos
e.consume();
}
}
@Override
public void keyPressed(KeyEvent e) {}
@Override
public void keyReleased(KeyEvent e) {}
}
public static void main(String[] args) {
SwingUtilities.invokeLater(new Runnable() {
@Override
public void run() {
new SoloNumeros();
}
});
}
}