maxresdefault 2 3

Eventos del teclado en Kotlin (KeyListener)(Curso de Kotlin desde cero [87])

En este tutorial vamos a crear una caja de texto y vamos a escuchar eventos del teclado en Kotlin así como los diferentes eventos del teclado como keyTyped,keyPressed y keyReleased.

  • Crear un JTextField y un JTextArea.
  • Crear un objeto KeyListener que va a estar a la escucha de los eventos del del teclado y los va a escribir el JTextArea:
    • keyTyped //Al escribir una letra
    • keyPressed //Presionar una tecla
    • keyReleased //Soltar una tecla

🔗 Librerias de Java swing: https://es.wikipedia.org/wiki/Swing_(biblioteca_gr%C3%A1fica)

Eventos del teclado en Kotlin

Codigo: https://github.com/programadornovato/CursoKotlin/commit/0f0424c24dc9050d1e25ae67d74877962934210d

import java.awt.*
import java.awt.event.*
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()
    }
    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 >>

Ads Blocker Image Powered by Code Help Pro

Ads Blocker Detected!!!

En Programador Novato vivimos de los anuncios, hemos detectado que está utilizando extensiones para bloquear anuncios. Ayudanos deshabilitando tu bloqueador de anuncios. :)