BULMA

Bulma se une a la protesta contra SOPA y PIPA

Bergantells Usuaris de GNU/Linux de Mallorca i Afegitons   |   Bisoños Usuarios de GNU/Linux de Mallorca y Alrededores
CONTENIDOS
. Jornadas de software libre
. Version para PDA
. Enlaces breves
. La asociacion
. Los mas leidos
. Autores [Actividad]
. Ultimos Comentarios
. Todos los titulares!
. Estadisticas
. Guia de estilo
. ¿Sugerencias?
. Wiki
. XML [Ayuda]
Listas de correo
. Archivos bulmailing
. Archivos BulmaGes
Radio libre :-)
. Des de la Xarxa (Archivos)
. Mallorca en Xarxa
Busquedas

+ Enlaces Linux
Ultimos kernels
(03/09/2014 05:24:51)
    
Google


En bulma.net
En internet
Creando interfaces gráficas con Gtk2-Perl (19627 lectures)
Por Vicenç Miralda Bover
vmiralda (http://www.parcfluvial.org)
Creado el 19/08/2004 23:15 modificado el 19/08/2004 23:15

En este artículo veremos una pequeña introducción a la creación de GUIs a través del módulo Gtk2 de perl. Este módulo nos permitirá crear interfaces gráficas, de aspecto bastante profesional, de una manera rápida y fácil.

Pagina1/6

Índice

  1. Hello World!
  2. Eventos y Callbacks
  3. Posicionando los widgets
  4. Ventanas
  5. Principales widgets
    1. Button
    2. Frames
    3. Labels
    4. Tooltips
    5. Checkbuttons
    6. RadioButtons
    7. TextEntry
    8. TextView
  6. Menus
  7. Referencias

Con el módulo Gtk2, podemos crear GUIs de manera rápida y fácil, para programas pequeños y medianos. En primer lugar, necesitamos tener instalados los módulos Glib y Gtk2. En debian es el paquete libgtk2-perl. Para las otras distribuciones podeis bajar los 2 módulos del CPAN o directamente desde la línea de comandos con perl -MCPAN -e shell (install Glib y install Gtk2).

Veremos una pequeña introducción a Gtk2 a través de Perl. Solamente trataré los signals (producidos por eventos), callbacks, posicionamiento de widgets, ventanas, los 7 widgets principales, menues y poco mas. Para los otros 35 widgets, man es vuestro amigo :-).

1.- Hello World!

Para no romper con la tradición, empezamos con el típico Hello World!


#!/usr/bin/perl -w

use Gtk2 '-init';

$ventana = Gtk2::Window->new('toplevel');
$ventana->set_title('Hello World!');
$ventana->set_border_width(20);
$boton = Gtk2::Button->new('Hello World!');
$boton->signal_connect('clicked' => sub {Gtk2->main_quit; });
$ventana->add($boton);
$ventana->show_all;

# Empieza el show...
Gtk2->main;

Bien, casi no necesita comentarios :-). La linea use Gtk2 '-init' carga el toolkit Gtk2 y lo inicializa. Sobra decir, que esta linea deberá estar presente en todos los programas :-) Con la llamada al constructor ('new') creamos una nueva instancia del objeto Window. El escalar $ventana contiene una referencia al widget que acabamos de crear.

A continuación, establecemos el título de la ventana y ponemos un borde de 20px a la ventana. Creamos un botón con el texto especificado y ahora llega lo importante. Asociamos la pulsación del boton (el evento 'clicked' ) a una subrutina (estrictamente, es una referencia a una subrutina). En el caso del ejemplo, estamos haciendo referencia a una subrutina anónima. Finalmente, con el método add añadimos el botón a la ventana creada anteriormente. Le decimos a la ventana que muestre todos los widgets que contiene y entramos en el bucle principal. A partir de aquí, el programa permanece a la espera que se produzca algún evento.

Muchas de las funciones de Gtk2 reciben como argumentos TRUE o FALSE. Si en vez de ir poniendo 1 y 0, quereis usar TRUE y FALSE, teneis que exportar las constantes TRUE y FALSE del módulo Glib al inicio de vuestros scripts.
Esto es: use Glib qw/TRUE FALSE/;


Paginas:  1  2  3  4  5  6  Abreviatura Siguiente>>

Imprimir
Version para
imprimir

Imprimir
Version
PDF
GRACIAS
Distribuciones Universal
Por el servidor
Dpto. de Matematicas e Informatica
Calificacion
***0
Vots: 24
Danos tu opinion:
**** Excelente
***0 Muy Bueno
**00 Bueno
*000 Regular
0000 Malo
Relacionados
. Geramik o aplicaciones GTK con aspecto KDE
. Nou llibre disponible en llinea: Perl For the Web
. Interface gráfico GTK para recursos samba
SECCIONES
Noticia
Breve
Truco
Enlace
Participa
Proyecto
Articulo
Webbulma
Manoletada :-)
Seguridad
Modificado: 6/8/2014 04:25:59 | Tiempo Total: 0.016 segs | Kernel: Linux - i686 - 2.6.26-1-686 | Last boot: too much time ago!!
Powered by Apache    MySQL    PHP    Gimp