Ir para conteúdo
Fórum Script Brasil
  • 0

Tá dificil de mais (dbgride)


rogeriojesus

Pergunta

Ola pessoal, sou novo no forum, alias um ótimo fórum;

Ao tentar dezenvolver um programa de controle de estoques, me deparei com a seguinte solução(PROBLEMA)

devido ao tanto de baixas, entradas e transferenças de estoque, resolvi tentar fazar o que já hávia visto em outro sistema

atraves de uma dbgride onde apertando um botão (NOVO) essa gride ficasse em modo de edição mas sem nenhum valor

então eu iria digitar o código do produto na primeira coluna da gride e altomaticamente apareceria a descrição desse produto na segunda coluna dessa gride

O problema é que eu não tenho nem idéia de como fazer.

se alguém tiver algum exemplo de como seria, fico a agradecer.

Obrigado a todos.

Link para o comentário
Compartilhar em outros sites

3 respostass a esta questão

Posts Recomendados

  • 0

exemplo:

procedure TForm1.DBGrid1KeyPress(Sender: TObject; var Key: Char); 
begin 
   if Key = #13 then 
      if not (ActiveControl is TDBGrid) then 
         begin 
            Key := #0; 
            Perform(WM_NEXTDLGCTL, 0, 0); 
         end 
      else if (ActiveControl is TDBGrid) then 
         with TDBGrid(ActiveControl) do 
         if selectedindex < (fieldcount -1) then 
            begin 
               selectedindex := selectedindex + 1; 
               CDS_Banco.Edit; 
               case selectedindex of 
                1 : CDS_BancoCODCLI.AsInteger  := CDS_CadcliCOD.AsInteger; 
                2 : CDS_BancoDATA.value := now; 
                3 : CDS_BancoDEPOSITOS.Value := 0.00; 
                4 : begin 
                       // comandos 
                    end; 
            end; 
end;

obs: conforme voce muda de coluna com a tecla TAB ( começando em 0 zero ) voce pode atribuir o valor que quiser as colunas referenciadas com os campos da sua tabela

abraço

Link para o comentário
Compartilhar em outros sites

  • 0

Obrigado pela ajuda;

Não consegui fazer, tentei auterar, mão deu erro mas tambem não aparece o resultado.

veja as auterações que fiz

procedure TForm1.DBGrid2KeyPress(Sender: TObject; var Key: Char);
begin
if Key = #13 then
      if not (ActiveControl is TDBGrid) then
         begin
            Key := #0;
            Perform(WM_NEXTDLGCTL, 0, 0);
         end
      else if (ActiveControl is TDBGrid) then
         with TDBGrid(ActiveControl) do
         if selectedindex < (fieldcount -1) then
            begin
               selectedindex := selectedindex + 1;
               ClientDataSet2.Edit;
               case selectedindex of
                1 : ClientDataSet2CODIGO.AsInteger  := ClientDataSet1CODIGO.AsInteger;
                2 : ClientDataSet2NOME.value := ClientDataSet1NOME.value;

                3 : begin
                       // comandos
                    end;
            end;
end;
end;

Link para o comentário
Compartilhar em outros sites

Participe da discussão

Você pode postar agora e se registrar depois. Se você já tem uma conta, acesse agora para postar com sua conta.

Visitante
Responder esta pergunta...

×   Você colou conteúdo com formatação.   Remover formatação

  Apenas 75 emoticons são permitidos.

×   Seu link foi incorporado automaticamente.   Exibir como um link em vez disso

×   Seu conteúdo anterior foi restaurado.   Limpar Editor

×   Você não pode colar imagens diretamente. Carregar ou inserir imagens do URL.



  • Estatísticas dos Fóruns

    • Tópicos
      152,3k
    • Posts
      652,3k
×
×
  • Criar Novo...