Gtk console php

Soyez le premier à donner votre avis sur cette source.

Snippet vu 8 399 fois - Téléchargée 27 fois

Contenu du snippet

Voici un bout de code, ça produit une fenêtre, (comme si on était dans une apps classique), et ça permet d'effectuer pas mal d'opérations, comme si on était dans une console...

ça permet simplement de tester des bouts de codes facilement...

la librairie qui me permet d'afficher une fenêtre est phpgtk (à ma conaissance, il n'y en a qu'une),

ce programme se lance donc en mode console (et oui, mozilla et ie bosseront de la même façon cette fois !), en faisant ./monprogramme.php sous linux, et hop, ça se lance tout seul... sous windows, je crois qu'il faut supprimer la première ligne et faire simplement monprogramme.php

bon, pour la doc :
http://gtk.php.net/

et toutes les références sur gtk

Si vous voulez réutiliser une variable d'une ligne sur l'autre, alors il vous faut impérativement stoquer cette variable dans $variables, car ce qui exécute est une fonction, donc, vos variables seront autrement perdues...

Source / Exemple :


#!/usr/bin/php4
<?php
ob_start();
$bgcolor='#77AAFF';
$acolor='#0077FF';
function deleteevent(){
	return false;
}
function destroywindow(){
	Gtk::main_quit();
}
function exit_window($bouton, $window){
	$window->destroy();
}
function executer($bouton){
	global $text, $variables;
	eval($text->get_text());
	speak();
}
function actualiser($bouton){
	speak();
}
function speak(){
	global $speak;
	$a=ob_get_clean();
	ob_start();
	$speak->insert_text($a, $speak->get_length());
}
set_time_limit(0);

if (!extension_loaded('php_gtk')) {
	if (!dl('php_gtk.so')) {
		exit();
	}
}
$variables=false;
$window = &new GtkWindow(GTK_WINDOW_TOPLEVEL);
$window->connect('destroy', 'destroywindow');
$window->connect('delete-event', 'deleteevent');
$window->set_border_width(5);
$window->set_title("PHP-MAX-MSN");
$window->set_default_size(500, 350);
$window->realize();

$style = gtk::widget_get_default_style();
$basicBackGroundColor = &new GdkColor($bgcolor);
$basicBackGroundColor2 = &new GdkColor($acolor);
$style->bg[GTK_STATE_NORMAL] = $basicBackGroundColor;
$style->bg[GTK_STATE_PRELIGHT] = $basicBackGroundColor2;

$window->set_style($style);

$VerticalBox=&new GtkVBox();
$VerticalBox->set_spacing(5);
$VerticalBox->set_border_width(0);

$VerticalBox2=&new GtkVBox();
$VerticalBox2->set_spacing(5);
$VerticalBox2->set_border_width(0);

$HorizontalBox=&new GtkHBox();
$HorizontalBox->set_spacing(5);
$HorizontalBox->set_border_width(0);

$text = &new GtkEntry();
$text->set_style($style);

$speak = &new GtkText();
$speak->set_style($style);

$bouton1 = &new GtkButton('actualiser');
$bouton1->connect('pressed', 'actualiser');
$bouton1->set_style($style);

$bouton2 = &new GtkButton('executer');
$bouton2->connect('pressed', 'executer');
$bouton2->set_style($style);

$VerticalBox2->add($bouton2);
$VerticalBox2->add($bouton1);

$HorizontalBox->add($text);
$HorizontalBox->add($VerticalBox2);

$VerticalBox->add($speak);
$VerticalBox->add($HorizontalBox);

$window->add($VerticalBox);
$window->show_all();

Gtk::main();
ob_end_clean();
?>

Conclusion :


c'est marrant, c'est à la fois une application, du graphique, et de la POO (gtk est OO, même si il est codé en C)

A voir également

Ajouter un commentaire

Commentaires

Messages postés
198
Date d'inscription
lundi 28 février 2005
Statut
Membre
Dernière intervention
14 novembre 2008

A ouai je vient de capter la date du dernier message...
Messages postés
12303
Date d'inscription
mardi 10 février 2004
Statut
Modérateur
Dernière intervention
30 juillet 2012
36
j'ai pas windows, et j'ai plus php-gtk depuis un moment... si je dois faire un "script graphique" je préfères choisir python, ou bien perl
Messages postés
198
Date d'inscription
lundi 28 février 2005
Statut
Membre
Dernière intervention
14 novembre 2008

Salut mec,
connais-tu WinBinder ? Va ici : http://winbinder.org et découvre cette magnifique extension (mieux que PHP-GTK si t'a windows). Va uassi dans la section "Useful Links" du site y a pleins de ressources...


ps : tient y ont changé l'affichage de la source sur codes-sources...
Messages postés
1352
Date d'inscription
lundi 27 octobre 2003
Statut
Membre
Dernière intervention
19 novembre 2008
1
Salut,

Si tu as installer php-GTK biensûr

lances l'invite de commande (msdos) et taper en ligne de commande

php emplecement\nomfichier.php

@+
Messages postés
18
Date d'inscription
samedi 16 avril 2005
Statut
Membre
Dernière intervention
20 septembre 2005

Comment l'utilise t'on car quand je le lance sous win avec la console ben, c'est mon editeur php qui démarre :( , poue editer le script :(
Afficher les 14 commentaires

Vous n'êtes pas encore membre ?

inscrivez-vous, c'est gratuit et ça prend moins d'une minute !

Les membres obtiennent plus de réponses que les utilisateurs anonymes.

Le fait d'être membre vous permet d'avoir un suivi détaillé de vos demandes et codes sources.

Le fait d'être membre vous permet d'avoir des options supplémentaires.