En este ejemplo se usarán las librerías javax.swing y java.awt para crear una ventana Swing en Groovy. El archivo se llamara Ventana.groovy.
Una de las ventajas de usar Groovy es que puedes utilizar las librerías de Java para crear aplicaciones de una manera más sencilla.
import javax.swing.JFrame
import javax.swing.JOptionPane
import javax.swing.ImageIcon
import javax.swing.*
import java.awt.event.*
import java.awt.*
Es importante importar estas librerías para Crear una ventana Swing en Groovy.
Creamos una función principal llamada ventana.
def ventana(){
// aquí el código
}
Para invocarla solo es necesario poner el nombre:
//invocamos el método
ventana()
Dentro de la función ventana se va definir tres componentes:
- Un JFrame, que servirá para contener los botones
- Dos JButton, uno para mostrar un mensaje y otro para salir
Como funciona crear una ventana Swing en Groovy
Crea una ventana con dos botones, el botón «Activa» solicita el nombre de una persona y lo muestra en una ventanita (JOptionPane). El botón «Salir» finaliza la aplicación. Eso es todo, solo es un ejemplo de uso de Swing en Groovy.
Crear el JFrame, definimos su tamaño, título e indicamos que se puede cerrar.
frame=new JFrame(title: '::Ventana en Groovy::',size: [270,300],layout: new FlowLayout(),defaultCloseOperation: javax.swing.WindowConstants.EXIT_ON_CLOSE)
El botón que muestra un mensaje. Podemos asignarle un título, un tooltip, un estilo (color) y una imagen.
btnActiva=new JButton("Activa",new ImageIcon("pet01.png"))
btnActiva.setBackground(Color.blue)
btnActiva.setToolTipText("activar...")
//...
Además definimos un evento con la interface ActionListener.
btnActiva.addActionListener({
def cad=JOptionPane.showInputDialog("Tu nombre:")
JOptionPane.showMessageDialog(null,"Hola "+cad,"Aviso del sistema",JOptionPane.PLAIN_MESSAGE,new ImageIcon("pet01.png"))
} as ActionListener)
El botón para salir. El método exit finalizará el programita.
btnSalir=new JButton("Salir",new ImageIcon("pet01.png"))
btnSalir.setBackground(Color.orange)
btnSalir.setToolTipText("quitar...")
btnSalir.addActionListener({
System.exit(0)
} as ActionListener)
Finalmente agregamos esos dos botones al JFrame. Además indicamos que el JFrame es visible (show).
frame.add btnActiva
frame.add btnSalir
frame.show()
Listo, compilamos
groovyc Ventana.groovy
y ejecutamos
groovy Ventana.groovy
Existe un framework llamado Griffon que permite crear aplicaciones Swing usando el lenguaje Groovy.
Espero les sirva de algo.