Fórum Adicionar coluna ao dbgrid em tempo de excução #336268

15/01/2007

0

Olá pessoal, estou com uma questão que me foi solicitada por um cliente
que deseja q todas as telas fo sistema sejam bem otimizadas. Ele me pediu a seguinte alteração:

1 - Clicar em um botão e aparecer os campos da tabela em questão;
2 - Marcar os campos da tabela e, na media que estes são marcados, são adicionados no dbgrid já com datasource e tudo, inclusive com [b:46ef78ad95]negrito[/b:46ef78ad95].

O item 1 eu já consegui fazer, só não conseguir criar a coluna e fazer o título ficar em negrito. Se os colegas poderem me dar essa força ficarei muito grato!!.

agraço a todos!!


Cmtbravo

Cmtbravo

Responder

Post mais votado

17/01/2007

verifique e linha abaixo, você colocou o valor do campo da query na coluna do grid, coloque o nome do field da query na propriedade FieldName, com isso está coluna pega os resultados da query depois de ser executada.

DBGrid1.Columns[0].FieldName := QrpdtReferencia.asstring;



qualquer coisa posta ai.
flw.


Pestana_

Pestana_
Responder

Gostei + 1

Mais Posts

16/01/2007

Pestana_

Para criar colunas no grid em tempo de execução, voce poderia fazer assim:

    DBGrid1.Columns.Add;
    DBGrid1.Columns[0].FieldName := ´nomedacoluna´;
    DBGrid1.Columns[0].Title.Caption := ´Caption´;



Responder

Gostei + 0

16/01/2007

Cmtbravo

Mas dessa forma não aparece nenhum dado no campo adicionado.
Exemplo. tenho uma query de consulta de produtos QRPDT o nome do campo q quero adcionar é Referencia, qundo eu faço do jeito abaixo a coluna é adicionada mas não aparece nenhum dado.

to fazendo assim

DBGrid1.Columns.Add;
DBGrid1.Columns[0].FieldName := QrpdtReferencia.asstring;
DBGrid1.Columns[0].Title.Caption := ´Referência´;


Responder

Gostei + 0

30/04/2022

Roberto Belan

Mas dessa forma não aparece nenhum dado no campo adicionado.
Exemplo. tenho uma query de consulta de produtos QRPDT o nome do campo q quero adcionar é Referencia, qundo eu faço do jeito abaixo a coluna é adicionada mas não aparece nenhum dado.

to fazendo assim

DBGrid1.Columns.Add;
DBGrid1.Columns[0].FieldName := QrpdtReferencia.asstring;
DBGrid1.Columns[0].Title.Caption := ´Referência´;






Coloca desta forma:


DBGrid1.Columns.Add;
DBGrid1.Columns[0].FieldName := 'Referencia'; /// nome de seu campo
DBGrid1.Columns[0].Title.Caption := 'Referência';
Responder

Gostei + 0

30/04/2022

Emerson Nascimento

o que você está fazendo não funciona.
DBGrid1.Columns.Add; // adiciona uma coluna no "fim" da grade (ULTIMA coluna)
DBGrid1.Columns[0].FieldName := QrpdtReferencia.asstring; // altera a PRIMEIRA coluna
DBGrid1.Columns[0].Title.Caption := ´Referência´; // altera a PRIMEIRA coluna

faça assim:
with DBGrid1.Columns.Add do // adiciona uma coluna no "fim" da grade (ULTIMA coluna)
begin
    FieldName := QrpdtReferencia.asstring;
    Title.Caption := 'Referência';
end;
Responder

Gostei + 0

30/04/2022

Emerson Nascimento

[Mas dessa forma não aparece nenhum dado no campo adicionado.
Exemplo. tenho uma query de consulta de produtos QRPDT o nome do campo q quero adcionar é Referencia, qundo eu faço do jeito abaixo a coluna é adicionada mas não aparece nenhum dado.]

De onde você obtém o nome do campo?
with DBGrid1.Columns.Add do // adiciona uma coluna no "fim" da grade (ULTIMA coluna)
begin
    FieldName := aqui_vai_o_nome_do_campo; // só o nome
    Title.Caption := aqui_vai_o_titulo_do_campo;
end;
por exemplo:
with DBGrid1.Columns.Add do // adiciona uma coluna no "fim" da grade (ULTIMA coluna)
begin
    FieldName := QrpdtReferencia.FieldName;
    Title.Caption := QrpdtReferencia.DisplayName;
end;


Responder

Gostei + 0

01/05/2022

Emerson Nascimento

Quem é Roberto Belan???
A resposta
o que você está fazendo não funciona.
DBGrid1.Columns.Add; // adiciona uma coluna no "fim" da grade (ULTIMA coluna)
DBGrid1.Columns[0].FieldName := QrpdtReferencia.asstring; // altera a PRIMEIRA coluna
DBGrid1.Columns[0].Title.Caption := ´Referência´; // altera a PRIMEIRA coluna
quem publicou fui eu, Emerson Nascimento
Responder

Gostei + 0

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

Aceitar