PHP-GTK: Criando Aplicações Gráficas com PHP Adianti Framework para PHP PHP Programando com Orientação a Objetos Criando Relatórios com PHP

[PHP-GTK] estrutura de um programa

Diego do Nascimento Feitosa dnfeitosa em gmail.com
Terça Agosto 1 08:33:57 CDT 2006


Na verdade, pelo que está parecendo, o seu global $window não está
funcionando corretamente... Um teste simples...comente essa linha e
veja se dá o mesmo erro na linha seguinte onde você chama o "if
($dep->get_text..."...

Uma outra coisa...eu copiei o seu código aqui e dei uma indentada (meu
client de e-mail bagunçou tudo!!) e vi algumas coisas um tanto quanto
esquisitas, por exemplo, declaração de function dentro de function...

Vc pode postar o conteúdo dos arquivos .glade? Qualquer coisa, me
manda em particular que eu dou uma olhada e retorno pra você ;)
diego em dnfeitosa.com

On 8/1/06, Fernando Henrique Correa <fernandohcorrea em gmail.com> wrote:
> Glauber,  desculpe não ter respondido...
> mais não sou um programador fera ainda em PHP-GTK.
>
> Creio que dentro de $cod não existe nenhum widget para se dar um foco, tente
> ver se realmente o objeto que vc está querendo dar foco esta lá mesmo.
> Utilize o var_dump($cod)...
>
>
> Em 31/07/06, glaubercunha em oi.com.br <glaubercunha em oi.com.br > escreveu:
> > será que alguem pode me ajudar?!
> >
> > glaubercunha em oi.com.br escreveu:
> > > Segue o codigo abaixo:
> > >
> > > o erro esta acontecendo na linha 42(indicada por uma ->)."Fatal
> > > Error:Call to a member function on a non-object"
> > >
> > > <?
> > > //carrega biblioteca gtk
> > > dl('php_gtk.' . PHP_SHLIB_SUFFIX);
> > >
> > > //LE O ARQUIVO .GLADE
> > > $interface = new
> GladeXML('c:\php4\test\rhman\objetos\principal.glade');
> > >
> > > //conecta todos os signais que vc tiver na interface
> > > $interface->signal_autoconnect();
> > >
> > > include ('dialogo.class');
> > > include ('mensagem.class');
> > >          function caddep(){
> > >         $caddep  = new
> > >
> GladeXML('c:\php4\test\rhman\objetos\departamento.glade');
> > >         $window  = $caddep->get_widget('frmcaddep');
> > >         $cod     = $caddep->get_widget('txtcod');
> > >         $dep     = $caddep->get_widget('txtdep');
> > >         $window  = $caddep->get_widget('frmcaddep');
> > >         $novo    = $caddep->get_widget('cmdnovo');
> > >         $salvar  = $caddep->get_widget('cmdsalvar');
> > >         $cancelar= $caddep->get_widget('cmdcancelar');
> > >         $alterar = $caddep->get_widget('cmdalterar');
> > >         $excluir = $caddep->get_widget('cdmexcluir');
> > >
> $salvar->connect_object("clicked","salvardep");
> > >              function sairdep(){// funcao para sair do programa
> > >                 new Dialogo ('Deseja realmente sair?','seSim');
> > >                 return;}
> > >             function seSim() {
> > >                 gtk::main_quit();}
> > >                            function salvardep($object){
> //funcao
> > > Salvar, insere no banco de dados
> > >                 include ('conexao.php');
> > >                                global
> $dep,$cod,$window;
> > >                                /*$departamento =
> $dep->get_text();
> > >                 var_dump($departamento);
> > >                 $codigo  = $cod->get_text();*/
> > > linha 42 ->$window->set_focus($cod);
> > >                                    if (!$dep->get_text
> ||
> > > !$cod->get_text){  //verifica se os campos foram preenchidos
> > >                         new Mensagem('Preencha os campos
> corretamente!');
> > >                         $cod->set_text('');
> > >                         $dep->set_text('');
> > >                         return;}
> > >
> > > if(is_numeric($cod->get_text)){//verifica se o campo e
> numerico
> > >                         $sql   = "INSERT INTO departamento
> > > (codigo,departamento) values
> ('$cod->get_text','$dep->get_text')";
> > > //Cria a query sql
> > >                         $exec  = mysql_query($sql, $con); // executa o
> > > query sql
> > >                         mysql_close($con); //fecha a conexao
> > >                                                    if
> ($exec){
> > >                                 new Mensagem('Cadastro
> efetuado com
> > > sucesso');
> > >                                 $cod->set_text('');
> > >                                 $dep->set_text('');
> > >                                 return;} // esvazia o
> campo
> > >                             else{
> > >                                 new Mensagem('codigo ou
> departamento
> > > ja cadastrado');
> > >                                 $cod->set_text('');
> > >                                 $dep->set_text('');
> > >                                 return;}}
> > >                     else{
> > >                         new Mensagem('O campo CODIGO deve ser
> numerico');
> > >                         $cod->set_text('');
> > >                         return;}}
> > >                         }
> > >      function cadcargo(){
> > >        $cargo  =   new
> > > GladeXML('c:\php4\test\rhman\objetos\cargo.glade');
> > >       }
> > >        function cadturno(){
> > >        $turno  =   new
> > > GladeXML('c:\php4\test\rhman\objetos\turno.glade');
> > >        }
> > >      function cadferiado(){
> > >        $feriado    =   new
> > > GladeXML('c:\php4\test\rhman\objetos\feriado.glade');
> > >        }
> > >       function sair()
> > >   {
> > >   new Dialogo ('Deseja realmente sair?','onSim');
> > >   return;}
> > >   function onSim() {
> > >             gtk::main_quit();}
> > > Gtk::main();
> > > ?>
> > >
> > >
> > >
> > > Fernando Henrique Correa escreveu:
> > >> Ok, Muita calma...
> > >> Posta os erros para que te possamos ajudarmos...
> > >>
> > >> Em 26/07/06, * glaubercunha em oi.com.br <mailto:glaubercunha em oi.com.br>*
> > >> < glaubercunha em oi.com.br <mailto: glaubercunha em oi.com.br>> escreveu:
> > >>
> > >>     Mas essa é justamente a ideia! =)
> > >>
> > >>     Como faço, para que dessa aplicação central chamar as outras
> > >>     janelas....
> > >>
> > >>     eu já criei um menu, com as opções, e registrei pra esses menus, os
> > >>     sinais que chamam as funções callback
> > >>     dentro dessa funções eu coloquei o codigo das janelas isoladas,
> > >> porem
> > >>     deu erro... tentei por "include" tb =), so que tb deu erro.....
> > >>
> > >>
> > >>     entendeu mais ou menos?!
> > >>
> > >>     obrigado
> > >>
> > >>     Fernando Henrique Correa escreveu:
> > >>     > Que tal criar uma aplicação central, com icones, menus, e
> > >>     apartir dela
> > >>     > vc chamar as suas janelas isoladas???
> > >>     >
> > >>     > Com essa aplicação central , vc pode definir um geranciamento de
> > >>     > usuarios controle de perfil de acesso... assim vai...
> > >>     >
> > >>     > Em 25/07/06, * glaubercunha em oi.com.br
> > >>     <mailto:glaubercunha em oi.com.br> <mailto:glaubercunha em oi.com.br
> > >>     <mailto:glaubercunha em oi.com.br>>*
> > >>     > <glaubercunha em oi.com.br <mailto: glaubercunha em oi.com.br> <mailto:
> > >>     glaubercunha em oi.com.br <mailto:glaubercunha em oi.com.br>> > escreveu:
> > >>     >
> > >>     >     Boa tarde lista!
> > >>     >     Tenho a seguinte duvida, como estruturar minha aplicação?!
> > >>     >
> > >>     >     Estou desenvolvendo um aplicativo para o setor de RH, de onde
> > >>     >     trabalho.
> > >>     >     Sou iniciante em PHP-GTK, e minha duvida é....
> > >>     >
> > >>     >     O sistema sera composto por diversas janelas, já tenho
> > >>     algumas delas
> > >>     >     funcionando, porem isoladamentes.
> > >>     >     Preciso agora, coloca-las dentro de uma aplicação principal.
> > >>     >
> > >>     >     Se alguem poder me ajudar, ficaria muito agradecido!
> > >>     >
> > >>     >     Obrigado
> > >>     >
> > >>     >
> _______________________________________________
> > >>     >     Lista mailing list
> > >>     >     Lista em php-gtk.com.br <mailto:Lista em php-gtk.com.br>
> > >>     <mailto:Lista em php-gtk.com.br <mailto: Lista em php-gtk.com.br>>
> > >>     >
> http://lists.php-gtk.com.br/cgi-bin/mailman/listinfo/lista
> > >>     <
> http://lists.php-gtk.com.br/cgi-bin/mailman/listinfo/lista>
> > >>     >
> > >>     >
> > >>     >
> > >>     >
> > >>     > --
> > >>     > Fernando Henrique Correa
> > >>     > ~//~//~//~//~//~//~//~//~//~//~
> > >>     >
> > >>     > ANTES DE IMPRIMIR, PENSE EM SUA RESPONSABILIDADE E COMPROMISSO
> > >> COM O
> > >>     > MEIO AMBIENTE.
> > >>     > JÁ IMPRIMIU!?! NÃO JOGUE FORA, UTILIZE O VERSO DA FOLHA COMO
> > >>     RASCUNHO!!
> > >>     >
> > >>
> > >>
> ------------------------------------------------------------------------
> > >>     >
> > >>     > _______________________________________________
> > >>     > Lista mailing list
> > >>     > Lista em php-gtk.com.br <mailto:Lista em php-gtk.com.br>
> > >>     >
> http://lists.php-gtk.com.br/cgi-bin/mailman/listinfo/lista
> > >>     <
> http://lists.php-gtk.com.br/cgi-bin/mailman/listinfo/lista>
> > >>     >
> > >>
> > >>     _______________________________________________
> > >>     Lista mailing list
> > >>     Lista em php-gtk.com.br <mailto:Lista em php-gtk.com.br>
> > >>
> http://lists.php-gtk.com.br/cgi-bin/mailman/listinfo/lista
> > >>
> > >>
> > >>
> > >>
> > >> --
> > >> Fernando Henrique Correa
> > >> ~//~//~//~//~//~//~//~//~//~//~
> > >>
> > >> ANTES DE IMPRIMIR, PENSE EM SUA RESPONSABILIDADE E COMPROMISSO COM O
> > >> MEIO AMBIENTE.
> > >> JÁ IMPRIMIU!?! NÃO JOGUE FORA, UTILIZE O VERSO DA FOLHA COMO RASCUNHO!!
> > >>
> ------------------------------------------------------------------------
> > >>
> > >> _______________________________________________
> > >> Lista mailing list
> > >> Lista em php-gtk.com.br
> > >>
> http://lists.php-gtk.com.br/cgi-bin/mailman/listinfo/lista
> > >>
> > >
> > > _______________________________________________
> > > Lista mailing list
> > > Lista em php-gtk.com.br
> > >
> http://lists.php-gtk.com.br/cgi-bin/mailman/listinfo/lista
> > >
> > >
> >
> > _______________________________________________
> > Lista mailing list
> > Lista em php-gtk.com.br
> >
> http://lists.php-gtk.com.br/cgi-bin/mailman/listinfo/lista
> >
>
>
>
> --
> Fernando Henrique Correa
> ~//~//~//~//~//~//~//~//~//~//~
>
> ANTES DE IMPRIMIR, PENSE EM SUA RESPONSABILIDADE E COMPROMISSO COM O MEIO
> AMBIENTE.
> JÁ IMPRIMIU!?! NÃO JOGUE FORA, UTILIZE O VERSO DA FOLHA COMO RASCUNHO!!
> _______________________________________________
> Lista mailing list
> Lista em php-gtk.com.br
> http://lists.php-gtk.com.br/cgi-bin/mailman/listinfo/lista
>
>
>


-- 
[]'s
Diego
www.dnfeitosa.com


More information about the Lista mailing list