Fórum Como Alterar o DisplayName e DisplayMask em RunTime #283116

27/05/2005

0

Olá, possuo uma IBQuery, que pego as consultas para uma tela de localização, por ser genérica, ela traz no DisplayName os nomes do próprio campo no Banco, ficando visivelmente ruim, queria saber se tem como eu mudar esta propriedade em RunTime... pega os valores gravados no Description Field do Próprio banco...

Pegar o Description eu consegui, só não consigo jogar o resultados no DisplyName

desde já agradeço a todos


[]s


Titanius

Titanius

Responder

Posts

27/05/2005

Gandalf.nho

Como vc está recuperando o Description e tentando atribuir o valor ao DisplayName?


Responder

Gostei + 0

27/05/2005

Titanius

Tenho uma Query chamada QrLocalizar, que vem os campos do meu localizar, e uma Query TbConsDescricao, que traz as descricoes da tabela selecionada pelo QrLocalizar.

Criei uma procedure que abre a ConsDescricao, e vai tentar mudar o DisplayName, segue ela:
procedure TDM.PegaDesc(vTabela: string);
var
  i: integer;
begin
  with TbConsDescricao do
  begin
    ParamByName(´PTabela´).AsString := vTabela;
    Open;
    First;
    QrLocalizar.First;
    for i := 0 to QRLocalizar.FieldCount - 1 do
    begin
      QrLocalizar.Fields[i].DisplayName :=  Fields[i].AsString;
      if QrLocalizar.Fields[i].DataType in [ftCurrency, ftFloat, ftBCD] then
        QrLocalizar.Fields[i].DisplayMask := ´,0.00´;
    end;

  end;
 
end;


Eu executaria esta Procedure no AfterOpen da QrLocalizar...



[]s


Responder

Gostei + 0

27/05/2005

Gandalf.nho

O que não está funcionando? Dá erro ou simplesmente não atribui nada?


Responder

Gostei + 0

27/05/2005

Titanius

Da mensagem:

[b:26365e628f]
cannot assign to a read-only property
[/b:26365e628f]

Tá falando que é somente leitura, como pode ser somente leitura se eu posso mudar ele pelo OI

[]s


Responder

Gostei + 0

27/05/2005

Gandalf.nho

No Help do Delphi tb indica que a propriedade DisplayName é read-only. Vc está usando essa propriedade aonde?


Responder

Gostei + 0

27/05/2005

Titanius

no caso, quando chamo os dados via runtime atraves de uma sql, nao eh esse DisplyName que aparece no Title dos DBGrid? o que eu quero é isso, que no GRid apareca a descricao e nao o nome do Campo, como está sendo feito... :D


[]s


Responder

Gostei + 0

27/05/2005

Gandalf.nho

Pq vc não modifica seu código para alterar o Title de cada coluna no DbGrid, já que o resultado final pro usuário será o mesmo?


Responder

Gostei + 0

Utilizamos cookies para fornecer uma melhor experiência para nossos usuários, consulte nossa política de privacidade.

Aceitar