admin Founder


Registrato: Oct 03, 2008 Messaggi: 261
|
Inviato: Mer Apr 15, 2009 6:48 pm Oggetto: [PHP] Calcolatrice (phpgtk 2.x) |
|
|
| Codice: | <?php
$log = 1; //1=abilitato, 0=disabilitato
function aggiungi($numero){
global $text1;
$testo = $text1->get_text();
if (isset($testo)){
$testo2 = "$testo$numero";
} else {
$testo2 = $numero;
}
$text1->set_text($testo2);
}
function resetta(){
global $text1;
$text1->set_text("");
}
function risolvi(){
global $log,$text1;
$testo = $text1->get_text();
$risultato = eval("return $testo;");
$text1->set_text($risultato);
if($log == 1){
$data = date("d.m.y");
$f = fopen("log.txt", "a+");
fwrite($f,"Data:$data | Operazione:$testo | Risultato:$risultato\n");
fclose($f);
}
}
$finestra = new GtkWindow(); //creo la finestra
$finestra->set_title("Calcolatrice"); //dò il nome alla finestra
$finestra->set_default_size(250, 300);
$finestra->connect_simple('destroy', array('gtk','main_quit'));
//inputbox
$text1 = new GtkEntry("");
$text1->modify_bg(Gtk::STATE_NORMAL, GdkColor::parse("#FFCC66"));
//bottoni
$b1 = new GtkButton("1");
$b1->connect_simple('clicked', 'aggiungi', '1');
$b1->modify_bg(Gtk::STATE_NORMAL, GdkCOlor::parse("#CCFF99"));
$b2 = new GtkButton("2");
$b2->connect_simple('clicked', 'aggiungi', '2');
$b2->modify_bg(Gtk::STATE_NORMAL, GdkCOlor::parse("#CCFF99"));
$b3 = new GtkButton("3");
$b3->connect_simple('clicked', 'aggiungi', '3');
$b3->modify_bg(Gtk::STATE_NORMAL, GdkCOlor::parse("#CCFF99"));
$b4 = new GtkButton("4");
$b4->connect_simple('clicked', 'aggiungi', '4');
$b4->modify_bg(Gtk::STATE_NORMAL, GdkCOlor::parse("#CCFF99"));
$b5 = new GtkButton("5");
$b5->connect_simple('clicked', 'aggiungi', '5');
$b5->modify_bg(Gtk::STATE_NORMAL, GdkCOlor::parse("#CCFF99"));
$b6 = new GtkButton("6");
$b6->connect_simple('clicked', 'aggiungi', '6');
$b6->modify_bg(Gtk::STATE_NORMAL, GdkCOlor::parse("#CCFF99"));
$b7 = new GtkButton("7");
$b7->connect_simple('clicked', 'aggiungi', '7');
$b7->modify_bg(Gtk::STATE_NORMAL, GdkCOlor::parse("#CCFF99"));
$b8 = new GtkButton("8");
$b8->connect_simple('clicked', 'aggiungi', '8');
$b8->modify_bg(Gtk::STATE_NORMAL, GdkCOlor::parse("#CCFF99"));
$b9 = new GtkButton("9");
$b9->connect_simple('clicked', 'aggiungi', '9');
$b9->modify_bg(Gtk::STATE_NORMAL, GdkCOlor::parse("#CCFF99"));
$b0 = new GtkButton("0");
$b0->connect_simple('clicked', 'aggiungi', '0');
$b0->modify_bg(Gtk::STATE_NORMAL, GdkCOlor::parse("#CCFF99"));
$reset = new GtkButton("C");
$reset->connect_simple('clicked', 'resetta');
$reset->modify_bg(Gtk::STATE_NORMAL, GdkColor::parse("#FFCC66"));
$piu = new GtkButton("+");
$piu->connect_simple('clicked', 'aggiungi', '+');
$piu->modify_bg(Gtk::STATE_NORMAL, GdkColor::parse("#CCFFFF"));
$meno = new GtkButton("-");
$meno->connect_simple('clicked', 'aggiungi', '-');
$meno->modify_bg(Gtk::STATE_NORMAL, GdkCOlor::parse("#CCFFFF"));
$diviso = new GtkButton("/");
$diviso->connect_simple('clicked', 'aggiungi', '/');
$diviso->modify_bg(Gtk::STATE_NORMAL, GdkCOlor::parse("#CCFFFF"));
$per = new GtkButton("X");
$per->connect_simple('clicked', 'aggiungi', '*');
$per->modify_bg(Gtk::STATE_NORMAL, GdkCOlor::parse("#CCFFFF"));
$uguale = new GtkBUtton("=");
$uguale->connect_simple('clicked', 'risolvi');
$uguale->modify_bg(Gtk::STATE_NORMAL, GdkCOlor::parse("#CCFF99"));
////////////////
$text = new GtkTable(1,1);
$text->attach($text1, 0, 1, 1, 2);
///////////////
$tabella = new GtkTable(4,4);
$tabella->attach($b1, 0, 1, 1, 2);
$tabella->attach($b2, 1, 2, 1, 2);
$tabella->attach($b3, 2, 3, 1, 2);
$tabella->attach($reset, 3, 4, 1, 2);
$tabella->attach($b4, 0, 1, 2, 3);
$tabella->attach($b5, 1, 2, 2, 3);
$tabella->attach($b6, 2, 3, 2, 3);
$tabella->attach($piu,3, 4, 2, 3);
$tabella->attach($b7, 0, 1, 3, 4);
$tabella->attach($b8, 1, 2, 3, 4);
$tabella->attach($b9, 2, 3, 3, 4);
$tabella->attach($meno,3, 4, 3, 4);
$tabella->attach($b0, 0, 1, 4, 5);
$tabella->attach($per,1, 2, 4, 5);
$tabella->attach($diviso,2,3,4,5);
$tabella->attach($uguale,3,4,4,5);
//container
$container = new GtkVBox();
$container->pack_start($text);
$container->pack_start($tabella);
$finestra->add($container);
$finestra->show_all();
Gtk::main();
?> |
Screen:http://img220.imageshack.us/img220/9759/screenshotpf0.jpg
screen log: http://img135.imageshack.us/img135/5348/screenshotyx0.jpg
By Luruke |
|