Lançado Adianti Framework 7.6!
Clique aqui para saber mais
Alterar valor da linha do datagrid Como faço para alterar o conteúdo de uma linha no datagrid ao carregar os itens? Ex. uma coluna STATUS com valores 0 ou 1, mudaria para INATIVO ou ATIVO, ou uma imagem na coluna do datagrid....
FV
Alterar valor da linha do datagrid  
Fechado
Como faço para alterar o conteúdo de uma linha no datagrid ao carregar os itens?
Ex. uma coluna STATUS com valores 0 ou 1, mudaria para INATIVO ou ATIVO, ou uma imagem na coluna do datagrid.

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)


PD

Oi Fagner,

Adicionamos objetos em uma datagrid por meio do método TDataGrid::addItem(). Mas antes disso, criamos as coluna da datagrid. Basicamente o framework exibe em cada coluna, algum atributo do objeto:
  1. <?php
  2. $name  = new TDataGridColumn('name''name''left'250);
  3. ?>


Nesse momento, podemos criar uma coluna virtual, que não existe na prática. Imaginando que o objeto "cliente" tenha um atributo chamado "sexo", que é {M,F}, e desejamos exibir {Masculino,Feminino}. Nesse caso, podemos criar uma coluna chamada "nome_sexo". Mas claro que essa coluna viria vazia, por que o objeto não tem esse atributo.

  1. <?php
  2. $name  = new TDataGridColumn('nome_sexo''Sexo''left'250);
  3. ?>


O próximo passo é alterara classe Active Record (cliente, nesse caso), e adicionarmos um método get_nome_sexo(). Sempre que tentarmos acessar o atributo ->nome_sexo, como no caso da coluna da datagrid, então esse método é executado, retornando a descrição...:

  1. <?php
  2. class Cliente extends TRecord
  3. {
  4.     const TABLENAME 'cliente';
  5.     const PRIMARYKEY'id';
  6.     const IDPOLICY =  'max'// {max, serial}
  7.     
  8.     public function get_nome_sexo()
  9.     {
  10.         $nomes = array('M'=>'Masculino''F'=>'Feminino');
  11.         return $nomes[$this->sexo];
  12.     }
  13. }
  14. ?>


No livro (www.adianti.com.br/bkframe) essas cosias são explicadas com mais detalhes. Não deixe de adquirir o seu ;-)

um abraço,
Pablo