Mudar setFormTitle dinamicamente Olá! Gostaria de saber como se é possível mudar dinamicamente o valor de setFormTitle. Desde já agradeço. ...
AR
Mudar setFormTitle dinamicamente  
Olá!
Gostaria de saber como se é possível mudar dinamicamente o valor de setFormTitle.
Desde já agradeço.


 
  1. <?php
  2. ...
  3. $marketplace_id = new TDBCombo('marketplace_id', 'dbaerp', 'MarketPlace', 'id', '{nome}-{taxa}', 'id');
  4. $marketplace_id->setChangeAction( new TAction( array($this, 'onMarketPlaceChange' )) ); ...
  5. ...
  6. public static function onMarketPlaceChange($param)
  7. {
  8. try
  9. {
  10. TTransaction::open('dbaerp');
  11. if (!empty($param['marketplace_id']))
  12. {
  13. $imagem_dy = new MarketPlace($param['marketplace_id']);
  14. // $img = "<img style='height:30px;float:right;margin:1px' src='$imagem_dy->photo_path'>";
  15. // $title = "<span style='color: $imagem_dy->color;'>$imagem_dy->nome</span>";
  16. $this->form->setFormTitle("Troquei dinamicamente" );
  17. ...
  18. ?>



Curso Dominando o Adianti Framework

O material mais completo de treinamento do Framework.
Curso em vídeo aulas + Livro completo + Códigos fontes do projeto ERPHouse.
Conteúdo Atualizado!


Dominando o Adianti Framework Quero me inscrever agora!

Comentários (5)


RB

Adriano,

Tenta desta forma

 
  1. <?php
  2. $marketplace_id->setChangeAction( new TAction([$this, 'onMarketPlaceChange'], [ 'static' => '1']));
  3. public function onMarketPlaceChange($param)
  4. {
  5. try
  6. {
  7. TTransaction::open('dbaerp');
  8. if (!empty($param['marketplace_id']))
  9. {
  10. $imagem_dy = new MarketPlace($param['marketplace_id']);
  11. $this->form->setFormTitle("Troquei dinamicamente" );
  12. ?>
AR

Olá, Rubens! Obrigado pelo retorno.

Não funcionou, recebo a seguinte mensagem:

 
  1. <?php
  2. Uncaught Error: Using $this when not in object context in
  3. ?>


O que me parece, é que não posso usar o $this->form-> nesse contexto.
RB

Adriano,

Deixa a função sem static.
AR

Rubens, tirei o static da função, agora não recebo mais a mensagem de erro, mas o $this->form->setFormTitle("Troquei dinamicamente" ); não funcionou, não aconteceu nada.
RB

Adriano,

Tenta assim, então :
 
  1. <?php
  2. private static $form;
  3. public static function onMarketPlaceChange($param)
  4. {
  5. try
  6. {
  7. TTransaction::open('dbaerp');
  8. if (!empty($param['marketplace_id']))
  9. {
  10. $imagem_dy = new MarketPlace($param['marketplace_id']);
  11. // $img = "<img style='height:30px;float:right;margin:1px' src='$imagem_dy->photo_path'>";
  12. // $title = "<span style='color: $imagem_dy->color;'>$imagem_dy->nome</span>";
  13. self::$form->setFormTitle("Troquei dinamicamente" );
  14. ...
  15. ?>


Só lembrando que desta forma não vai conseguir usar o $this->form em outras funcões,