Aplicaciones de escritorio en PHP

Juanjo | 3 Noviembre, 2008

Todos nosotros conocemos la utilidad indiscutible de PHP para la elaboracion y programacion de paginas web dinamicas, y la presencia que hoy en dia tiene este lenguaje en todos los servidores.

Lo que no muchos conocen de este lenguaje de programacion interpretado es la posibilidad de utilizarlo para programar aplicaciones de escritorio con interfaz grafica usando las librerias GTK+.

Estas librerias se utilizan para desarrollar interfaces graficas de usuario para principalmente los entornos graficos GNOME, XFCE y ROX de sistemas UNIX. GTK+ es la abreviatura de GIMP tookit.

PHP-GTK es una extension para el lenguaje de programacion PHP que provee una interface orientada a objetos a las clases y funciones de GTK+ permitiendo simplificar la creacion de aplicacion multiplataforma con interfaz grafica.

Existen utilidades que permiten configurar en tu equipo todo lo necesario para comenzar a desarrollar en PHP-GTK2. Una de estas utilidades es GNOPE, que se puede descargar desde su web oficial.

Este es un ejemplo del clasico “Hola Mundo” donde se utilizan las clases GtkWindow para construir ventanas y la clase GtkButton para crear botones.

<?php
class_exists(’gtk’) or die(’Falta habilitar la extensión php-gtk2 en el php.ini’ . “\r\n”);

class classButton extends GtkWindow
{ function __construct()
{ parent::__construct();
$this->connect_object(’destroy’, array(’gtk’, ‘main_quit’));
$this->set_title(__CLASS__);
$this->set_position(Gtk::WIN_POS_CENTER);
$this->set_default_size(-1, -1);
$this->set_border_width(8);
$this->add($this->__create_button());
$this->show_all();
}
function __create_button()
{ $button = new GtkButton(’Aceptar’);
$button->connect(’clicked’, array($this, ‘onClickedButton’), ‘Hola mundo!!!’);
return $button;
}
function onClickedButton($button, $text)
{ $owntext = “\r\n\r\n”.$text.”\r\n”;
$dialog = new GtkMessageDialog($this, Gtk::DIALOG_MODAL | Gtk::DIALOG_DESTROY_WITH_PARENT,
Gtk::MESSAGE_INFO, Gtk::BUTTONS_OK,$text);
$dialog->run();
$dialog->destroy();
}
}

new classButton();
Gtk::main();

?>

Sin comentarios »

RSS feed para los comentarios de esta entrada. TrackBack URI

Dejar un comentario

XHTML: <a href="" title=""> <abbr title=""> <acronym title=""> <b> <blockquote cite=""> <cite> <code> <del datetime=""> <em> <i> <q cite=""> <strike> <strong>

Este blog funciona gracias a WordPress con el theme GimpStyle modificado por Wynfor | Soluciones Informáticas.
Entradas y Comentarios feeds. XHTML y CSS válidos.

Cerrar
Enviar por Correo