Lançado Adianti Framework 7.6!
Clique aqui para saber mais
Como atribuir um evento ao um TButton Criei um formulário através do Adianti Studio e comecei atribuir eventos via código, porem não conseguir atribuir evento ao TButton de que maneira posso fazer? Segue o código de conseguir fazer até o momento. ...
AC
Como atribuir um evento ao um TButton  
Fechado
Criei um formulário através do Adianti Studio e comecei atribuir eventos via código, porem não conseguir atribuir evento ao TButton de que maneira posso fazer? Segue o código de conseguir fazer até o momento.

  1. <?php
  2.     class gerapedido extends TPage{
  3.         private $form;
  4.         function __construct(){
  5.             parent::__construct();
  6.             $this->form = new TForm('pedido_form');
  7.             try {
  8.                 $ui = new TUIBuilder(1100,600);
  9.                 $ui->setController($this);
  10.                 $ui->setForm($this->form);
  11.                 $ui->parseFile('app/forms/ColunasVigas.form.xml');
  12.                 
  13.                  
  14.                 
  15.                 
  16.                 $this->form->add($ui);
  17.                 
  18.                  //Pegando dados dos campos vcodprod1,vcodprod2
  19.                 $vcodprod1     $ui->getWidget('vcodprod1');
  20.                 $vcodprod2     $ui->getWidget('vcodprod2');
  21.             
  22.                 //Criando as ações para cada item
  23.                 $exit_codigo  = new TAction(array($this,'onExitCodprod1'));
  24.                 $exit_codigo2 = new TAction(array($this,'onExitCodprod2'));
  25.             
  26.                 //Setando as ações criadas        
  27.                 $vcodprod1->setExitAction($exit_codigo);
  28.                 $vcodprod2->setExitAction($exit_codigo2);
  29.                 
  30.                 //Minha dúvida é como atribuir uma ação para o botão agora ?
  31.                 
  32.             
  33.                 $this->form2->setFields($ui->getFields());
  34.                         
  35.                 
  36.             } catch (Exception $e) {
  37.                 new TMessage('error',$e->getMessage());
  38.             }
  39.             
  40.             parent::add($this->form);
  41.         }
  42.         
  43.         public function onExitCodprod1($param){
  44.             $obj = new stdClass();
  45.             $obj->vproduto1 'Testando ação';
  46.             
  47.             TForm::sendData('pedido_form'$obj);
  48.         }
  49.     }
  50.     ?>



Curso completo Meu Negócio Pronto
Use para si, ou transforme em um negócio: Inclui aulas e códigos-fontes
Gestor de conteúdo (SITE) + Loja Virtual (E-Commerce) + Emissor de Notas para infoprodutos


Meu negócio pronto Quero me inscrever agora!

Comentários (1)


MS

Para adicionar ações a botões no Designer do Adianti Studio Pro, quando um botão está selecionado você tem uma propriedade ao lado direito que é o "Método". Neste campo você pode digitar qualquer método por exemplo "onTeste" e então criar este método no controlador.

  1. <?php
  2. class gerapedido extends TPage {
  3.     private $form;
  4.     function __construct() {
  5.         parent::__construct();
  6.         $this->form = new TForm('pedido_form');
  7.         try {
  8.             $ui = new TUIBuilder(1100600);
  9.             $ui->setController($this);
  10.             $ui->setForm($this->form);
  11.             $ui->parseFile('app/forms/ColunasVigas.form.xml');
  12.             $this->form->add($ui);
  13.             //Pegando dados dos campos vcodprod1,vcodprod2
  14.             $vcodprod1 $ui->getWidget('vcodprod1');
  15.             $vcodprod2 $ui->getWidget('vcodprod2');
  16.             //Criando as ações para cada item
  17.             $exit_codigo = new TAction(array($this'onExitCodprod1'));
  18.             $exit_codigo2 = new TAction(array($this'onExitCodprod2'));
  19.             //Setando as ações criadas
  20.             $vcodprod1->setExitAction($exit_codigo);
  21.             $vcodprod2->setExitAction($exit_codigo2);
  22.             $this->form2->setFields($ui->getFields());
  23.         } catch (Exception $e) {
  24.             new TMessage('error'$e->getMessage());
  25.         }
  26.         parent::add($this->form);
  27.     }
  28.     public function onExitCodprod1($param) {
  29.         $obj = new stdClass();
  30.         $obj->vproduto1 'Testando ação';
  31.         TForm::sendData('pedido_form'$obj);
  32.     }
  33.     function onTeste($param) {
  34.         new TMessage('info''funciona');
  35.     }
  36. }
  37. ?>