Escrevendo aplicações GUI com PHP-GTK
Obviamente é muito difícil ensinar PHP-GTK em apenas um artigo, mas espero ter conseguido passar o básico sobre o assunto para você. Para finalizar, trago aqui um script. Um simples visualizador de arquivos de texto sem formatação (.php, .txt, etc).
O código do script:
A sua janela ficará mais ou menos assim:
Bom, se você notar bem no código, eu usei uma função diferente de meus outros exemplos:
$window->set_default_size((gdk::screen_width()-40), (gdk::screen_height()-40));
Gdk::screen_width() e gdk::screen_height() pegam a largura e a altura da tela do usuário. Então o tamanho desta janela terá de largura: gdk::screen_width()-40, ou seja 40 pixels menos do que a largura da tela. E de altura: gdk::screen_height()-40 (40 pixels a menos que a altura da tela).
Espero ter dado uma sede de PHP-GTK em vocês. Talvez em breve eu (ou alguém) coloque outros artigos sobre o assunto, para ensinar novas técnicas e um pouco mais, além do básico.
Se quiserem informações sobre funções, a melhor alternativa é recorrer ao manual:
http://gtk.php.net/
O código do script:
<?php if (!class_exists('gtk')) { if (strtoupper(substr(PHP_OS, 0,3) == 'WIN')) { dl('php_gtk.dll'); } else { dl('php_gtk.so'); } } function abrir() { global $fs; $fs->show_all(); } function abrir_cancel() { global $fs; $fs->hide(); } function abrir_ok() { global $window; global $fs; global $conteudo; global $arquivo; $arquivo = $fs->get_filename(); $window->set_title("PGpad ($arquivo)"); $conteudo->set_point(0); $conteudo->forward_delete($conteudo->get_length()); $f_cont = @fopen($fs->get_filename(), "r"); $conteudo->insert(null, null, null, str_replace(" ","",fread($f_cont, filesize($fs->get_filename())))); @fclose($f_cont); unset($f_cont); $fs->hide(); } function destroy() { gtk::main_quit(); } function delete_event() { return false; } $fs = &new GtkFileSelection("Abrir"); $ok_button = $fs->ok_button; $ok_button->connect("clicked", "abrir_ok", $fs); $cancel_button = $fs->cancel_button; $cancel_button->connect("clicked", "abrir_cancel"); $window = &new GtkWindow(); $window->connect("destroy", "destroy"); $window->connect("delete-event", "delete_event"); $window->set_border_width(5); $window->set_title("PGpad"); $window->set_position(GTK_WIN_POS_CENTER); $window->set_default_size((gdk::screen_width()-40), (gdk::screen_height()-40)); $grid = &new GtkTable(1, 2); $grid->set_row_spacings(4); $grid->set_col_spacings(4); $window->add($grid); $botao_abrir = &new GtkButton("Abrir"); $botao_abrir->connect("clicked","abrir"); $grid->attach($botao_abrir, 0, 1, 0, 1, GTK_FILL, GTK_SHRINK); $conteudo = &new GtkText(); $conteudo->set_editable(false); $scrolled_window = &new GtkScrolledWindow(); $scrolled_window->set_policy(GTK_POLICY_ALWAYS, GTK_POLICY_ALWAYS); $scrolled_window->add($conteudo); $grid->attach($scrolled_window, 0, 1, 1, 2); $conteudo->insert(null, null, null, "Clique no botão Abrir para escolher o arquivo a ser visualizado."); $window->show_all(); Gtk::main(); ?>
A sua janela ficará mais ou menos assim:
Bom, se você notar bem no código, eu usei uma função diferente de meus outros exemplos:
$window->set_default_size((gdk::screen_width()-40), (gdk::screen_height()-40));
Gdk::screen_width() e gdk::screen_height() pegam a largura e a altura da tela do usuário. Então o tamanho desta janela terá de largura: gdk::screen_width()-40, ou seja 40 pixels menos do que a largura da tela. E de altura: gdk::screen_height()-40 (40 pixels a menos que a altura da tela).
Espero ter dado uma sede de PHP-GTK em vocês. Talvez em breve eu (ou alguém) coloque outros artigos sobre o assunto, para ensinar novas técnicas e um pouco mais, além do básico.
Se quiserem informações sobre funções, a melhor alternativa é recorrer ao manual:
http://gtk.php.net/
Pessoal tenho um grupo de php gtk com bastantes dicas interessantes
acessem lá e vejam
http://groups-beta.google.com/group/GTK-PORTUGAL
Para mais contactem-me no meu site http://onidesk.sytes.net
acessem lá e vejam
http://groups-beta.google.com/group/GTK-PORTUGAL
Para mais contactem-me no meu site http://onidesk.sytes.net
25/05/2005 7:12am
(~19 anos atrás)
Se alguém souber de um compilador de arquivos GTK posta ae o link...
13/12/2003 1:58pm
(~21 anos atrás)
Pensei em instalar essa biblioteca doida, mas pintou uma pequena dúvida:
O que o cliente precisa ter instalado para ver a aplicação?
O que o cliente precisa ter instalado para ver a aplicação?
08/12/2003 7:47am
(~21 anos atrás)
Buenas !
Tchê, ate onte eu sei nao, pois o php-gtk vai ler o seu arquivo .php interpretar-lo e depois executar.
Valeu,
Gordo
Tchê, ate onte eu sei nao, pois o php-gtk vai ler o seu arquivo .php interpretar-lo e depois executar.
Valeu,
Gordo
11/09/2002 2:43pm
(~22 anos atrás)
Aplicação GUI é uma aplicação que faz uso de interface gráfica com o usuário. Serve pra que algumas pessoas possam usar o computador, pois para elas de outra forma seria difícil demais.
28/06/2002 11:01pm
(~22 anos atrás)
Bem. Delphi é um editor. A linguagem é o object pascal. E sem a ajuda do delphi, essa linguagem também é bem xaropinha.
28/06/2002 10:59pm
(~22 anos atrás)
O propósito do php-gtk, como o rodrigo disse, é provar que o php é orientado a objetos, e pode fazer aplicações client-side usando gui. Isto mostra que o objetivo não é disputar mercado com tecnologias como delphi ou visual basic.
02/06/2002 4:31pm
(~22 anos atrás)
http://onidesk.sytes.net