Ajuda - Busca - Membros - Calendário
Versão Completa: (Resolvido) Editar Direto no DBGrid
Fórum Script Brasil > Programação & Desenvolvimento > Delphi, Kylix
Recife
Boa Tarde,
Faz um tempo que não posto nada no forum, porém estou precisando de ajuda.

Estou trabalhando com Delphi 5 e BD Firebird 1.5

Tenho a seguinte situção:
Criei uma tabela temporaria em tempo de execução e com os valores dessa tabela carrego um grid também em tempo de execução. Com isto, tenho os dados apresentados no grid sem problemas. O meu problema esta que, preciso editar uma coluna especifica, mais detalhadamente a colum[3].

Tenho uma query(TQuery) que criou em tempo de execução e uma datasource que peguei da paleta DATAACESS em que seto a query temporaria a esse datasource em tempo de execução e que ligo ao meu DBGRID, também em tempo de execução.

Fiz o seguinte para poder editar, mais é só um esbouço, pois não sei o que passar para dentro da query , se o valor da coluna do DBgrid que esta sendo digitado ou outro meio.

Sei que estou errando em algum processo, por isto solicitaria ajuda para poder editar no DBGrid.

Este foi o esbouço que, fiz porém pelo fato de não saber com passar o valor para query e atualizar a tabela no BD, mais uma vez peço ajuda

CODE
procedure TForm1.DBGrid1DBLClik(sender)
begin
   Qtemp.edit;
   Qtemp.fieldbyname('QTD_EMITIDA').asfloat := //não sei o que passar aqui;
   Qtemp.post;
end;
Recife
Pessoal,
depois de muito trabalhar em cima dessa dúvida, consegui editar dentro do dbgrid.

Utilizei no momento da abertura da minha query (verificando se a mesma era <> de IsEmpty) alterar seu estado para Edit e o requestlive para true. Depois a coluna que estou querendo alterar a sua propriedade Readonly para false, no doubleclick do dbgrid coloquei um post na query que esta ligada ao dbgrid, há tem também na propriedade options do DBBGRID que ficou da seguinte maneira:
dgeditng = true;
dgalwaysshoeeditor = true;
dgtitles = true;
dgindicator = true;
dgcolumresize = true;
dgcollines = true;
dgrowlines = true;
dgtabs = true;
dgalwayssowslection = false;
dgconfirmdelete = false;
dgcancelonexit = false;
dgmultiselect = false;
Esta é uma versão simplificada de nosso conteúdo principal. Para ver a versão completa com maiores informações, formatação e imagens, por favor clique aqui.
Invision Power Board © 2001-2012 Invision Power Services, Inc.