CS
Problemas com o setField
Boa noite, pessoal. Ainda tentando resolver o esquema de botões dinâmicos no form.
Utilizando o seguinte código já consigo montar a tela:
Só que cada button vai ter uma action (edit ou new). Se tento setar a action:
$button->setAction(new TAction(array('OprComanda', 'onEdit')));
retorna: Você deve passar o AdiantiWidgetFormTButton (^2) como parâmetro para TForm::setFields();
Como faço para atribuir o button ao form conforme vou gerando os mesmos?
Segue imagem da tela.
Utilizando o seguinte código já consigo montar a tela:
- <?php
- $table_mesa = new TTable;
- $table_mesa-> style = 'text-align:center;width:50%;';
- $frame_mesa = new TFrame;
- $frame_mesa->setLegend('Mesas');
- $frame_mesa->style= 'background:whiteSmoke;width:95%;';
- $frame_mesa->add($table_mesa);
-
- $numCols = 5; // Número de Colunas
- $i=0;
-
- foreach($mesas_obj as $mesa)
- {
- ($i%$numCols==0) ?$row = $table_mesa->addRow() : null;
- if ($mesa->situacao == 'A')
- {
- $button = new TButton("{$mesa->id}");
- $button->style = 'box-shadow: 0 0 0 1px #8A8A8A;border-radius: 2px;width:57px;height:35px;color: #ff0000;';
- $button->setLabel("{$mesa->id}");
- $button->setImage('uso1.png');
- $row->addCell($button);
- } else {
-
- $button = new TButton("{$mesa->id}");
- $button->style = 'box-shadow: 0 0 0 1px #8A8A8A;border-radius: 2px;width:57px;height:35px;color: #008000;';
- $button->setLabel("{$mesa->id}");
- $button->setImage('livre1.png');
- $row->addCell($button);
- }
- ($i%$numCols==$numCols-1) ? $table_mesa->addRow() : null;
- $i++;
- }
-
- parent::add($frame_mesa);
- ?>
Só que cada button vai ter uma action (edit ou new). Se tento setar a action:
$button->setAction(new TAction(array('OprComanda', 'onEdit')));
retorna: Você deve passar o AdiantiWidgetFormTButton (^2) como parâmetro para TForm::setFields();
Como faço para atribuir o button ao form conforme vou gerando os mesmos?
Segue imagem da tela.
Carlos, adicione cada botão criado através da função addField: