Ejercicio.- Validar número en Kotlin (Curso de Kotlin desde cero [88])
En este ejercicio vamos a validar número en Kotlin osea si el texto que se está introduciendo en nuestra caja de texto (JTextField) es numero o no.
- Crear un JTextField y un JTextArea.
- Crear un objeto KeyListener que va a estar a la escucha de los eventos de keyReleased en donde valoraremos si es un número .
- Crearemos el método esNumero el cual recibirá un string que validara si es un número o no, si es numero retorna un true de lo contrario retorna un false.
- Si el método esNumero retorna un false agregaremos en el JTextArea el texto que diga, no, no es número de los contrario indicamos que si es numero.
🔗 Librerias de Java swing: https://es.wikipedia.org/wiki/Swing_(biblioteca_gr%C3%A1fica)
Codigo: https://github.com/programadornovato/CursoKotlin/commit/9423a75b6a6426394b688c912701734718f582d5
import java.awt.*
import java.awt.event.*
import java.lang.Exception
import javax.swing.*
class Ventana(titulo:String?):JFrame(titulo){
var contenedor=JPanel()
init {
var d=Dimension(500,500)
this.size=d
defaultCloseOperation=WindowConstants.EXIT_ON_CLOSE
this.contentPane.add(contenedor)
contenedor.layout=null
//evento()
//eventosRaton()
//eventoTeclado()
validarNumero()
}
fun validarNumero(){
var caja=JTextField()
caja.setBounds(10,10,400,30)
contenedor.add(caja)
var areaTexto=JTextArea()
areaTexto.setBounds(10,50,400,200)
contenedor.add(areaTexto)
var l:KeyListener=object :KeyListener{
override fun keyPressed(e: KeyEvent?) {
}
override fun keyTyped(e: KeyEvent?) {
}
override fun keyReleased(e: KeyEvent?) {
if(esNumero(caja.text)==true){
areaTexto.append("Si humano, si es un numero\n")
}else{
areaTexto.append("No humano estupido, esto no es un numero\n")
}
}
}
caja.addKeyListener(l)
}
fun esNumero(texto:String):Boolean{
try {
texto.toInt()
return true
}catch (e:Exception){
return false
}
}
fun eventoTeclado(){
var caja=JTextField()
caja.setBounds(10,10,400,30)
contenedor.add(caja)
var areaTexto=JTextArea()
areaTexto.setBounds(10,50,400,200)
contenedor.add(areaTexto)
var l:KeyListener=object :KeyListener{
override fun keyPressed(e: KeyEvent?) {
areaTexto.append("keyPressed\n")
}
override fun keyTyped(e: KeyEvent?) {
areaTexto.append("keyTyped\n")
}
override fun keyReleased(e: KeyEvent?) {
//areaTexto.append("keyReleased\n")
if(e!!.keyChar=='*'){
areaTexto.append("Soltaste el asterisco\n")
}
if(e!!.keyChar=='\n'){
areaTexto.append("Soltaste el enter\n")
}
if(e!!.keyChar==' '){
areaTexto.append("Soltaste el espacio\n")
}
}
}
caja.addKeyListener(l)
}
fun eventosRaton(){
var boton=JButton("Humano ponte a jugar con tu raton (¡¡¡El de la compu!!!)")
boton.setBounds(10,10,450,30)
contenedor.add(boton)
var caja=JTextField()
caja.setBounds(10,50,400,30)
contenedor.add(caja)
var l:MouseListener=object :MouseListener{
override fun mouseClicked(e: MouseEvent?) {
//caja.text="mouseClicked"
}
override fun mouseEntered(e: MouseEvent?) {
caja.text="mouseEntered"
}
override fun mouseExited(e: MouseEvent?) {
caja.text="mouseExited"
}
override fun mousePressed(e: MouseEvent?) {
caja.text="mousePressed"
}
override fun mouseReleased(e: MouseEvent?) {
caja.text="mouseReleased"
}
}
boton.addMouseListener(l)
}
fun evento(){
var boton=JButton("Humano coloca tu miserable nombre en el cuadro de texto y da click aqui")
boton.setBounds(10,10,450,30)
contenedor.add(boton)
var caja=JTextField()
caja.setBounds(10,50,400,30)
contenedor.add(caja)
var etiqueta=JLabel()
etiqueta.setBounds(10,100,400,30)
contenedor.add(etiqueta)
var accion=ActionListener{
etiqueta.text="Hola ${caja.text}"
}
boton.addActionListener(accion)
}
}
🎦 Lista de reproducción de este curso: https://www.youtube.com/playlist?list=PLCTD_CpMeEKSjzbsW_zmVNz23GyOVsdbS
🎦 [Curso] Java Netbeans Completo☕: https://www.youtube.com/playlist?list=PLCTD_CpMeEKTT-qEHGqZH3fkBgXH4GOTF
🎦 [CURSO] PYTHON PARA PRINCIPIANTES🐍: https://www.youtube.com/playlist?list=PLCTD_CpMeEKRppvi86Dy8CPYZ8-XzN2qu
🔗 Facebook: https://facebook.com/ProgramadorNovatoOficial
🔗 Twitter: https://twitter.com/programadornova
🔗 Linkedin: https://www.linkedin.com/in/programadornovato/
🔗 Instagram: https://www.instagram.com/programadornovato/
🔗 Pagina oficial: https://www.programadornovato.com
🔗 Gracias por apoyar este canal: https://www.patreon.com/programadornovato
🎦 Canal de youtube: https://www.youtube.com/c/programadornovato
<<Anterior tutorial Siguiente tutorial >>