DBGrid - Capturar os Valores
Bom Pessoal... tenho uma pesquisa em MySQL que esta ativa somente em tempo de execução... mas preciso copiar alguns valores da pesquisa...
Pensei em capturar do DBGrid quando clico duas vezes... desta forma os valores seriam gravados nos ´Edits´ respectivos...
CodCliente
NomeCliente
etc...
ao clicar duas vezes... eu preciso fazer uma copiar do valor da Coluna CodCliente no EditCodCliente
NomeCliente no EditNomeCliente
e assim por diante...
se alguém puder me ajudar... Fico Grato...
Pensei em capturar do DBGrid quando clico duas vezes... desta forma os valores seriam gravados nos ´Edits´ respectivos...
CodCliente
NomeCliente
etc...
ao clicar duas vezes... eu preciso fazer uma copiar do valor da Coluna CodCliente no EditCodCliente
NomeCliente no EditNomeCliente
e assim por diante...
se alguém puder me ajudar... Fico Grato...
Adelor Silva
Curtidas 0
Respostas
Aroldo Zanela
22/07/2006
Colega,
A dbGrid possui um manipulador de evento para o duplo clique. Adicione algo como:
A dbGrid possui um manipulador de evento para o duplo clique. Adicione algo como:
. . . EditCodCliente.Text := TABELACodCliente.AsString; EditNomeCliente.Text := TABELANomeCliente.Value; . . .
GOSTEI 0
Adelor Silva
22/07/2006
Primeiramente gostaria de agradecer sua colaboração...
mas eu preciso obter os valores de um DBGrid1 que esta apontando para uma ZQuery1...
da forma que você passou ele captura o primeiro registro da Tabcliente cadastrado...
se puderes me ajudar ... agradeço...
mas eu preciso obter os valores de um DBGrid1 que esta apontando para uma ZQuery1...
da forma que você passou ele captura o primeiro registro da Tabcliente cadastrado...
se puderes me ajudar ... agradeço...
GOSTEI 0
Night_man
22/07/2006
foce ja tentou fazer on evento afterscrroll da query
EditCodCliente.Text := dataset.fieldByName(´CodCliente´).AsString;
EditNomeCliente.Text := dataset.fieldByName(NomeCliente´).AsString;
EditCodCliente.Text := dataset.fieldByName(´CodCliente´).AsString;
EditNomeCliente.Text := dataset.fieldByName(NomeCliente´).AsString;
GOSTEI 0
Adelor Silva
22/07/2006
Muito obrigado NiGTH_MaN...
Desta forma funcionou... qdo eu clico sobre as linhas do DBGrid1 os mesmos valores aparece Edits...
mas se você souber como posso fazer dando dois clidks sobre o DBGrid1, ficaria mais adequado com o objetivo do projeto...
mas mesmo assim... muito obrigado... pela sua disponibilidade...
Desta forma funcionou... qdo eu clico sobre as linhas do DBGrid1 os mesmos valores aparece Edits...
mas se você souber como posso fazer dando dois clidks sobre o DBGrid1, ficaria mais adequado com o objetivo do projeto...
mas mesmo assim... muito obrigado... pela sua disponibilidade...
GOSTEI 0
Night_man
22/07/2006
No evento OnMouseDown do DBGrid tenta colocar isso
if (Shift in ssDouble) then
begin
EditCodCliente.Text := Query.fieldByName(´CodCliente´).AsString;
EditNomeCliente.Text := Query.fieldByName(´NomeCliente´).AsString;
end;
if (Shift in ssDouble) then
begin
EditCodCliente.Text := Query.fieldByName(´CodCliente´).AsString;
EditNomeCliente.Text := Query.fieldByName(´NomeCliente´).AsString;
end;
GOSTEI 0
Adelor Silva
22/07/2006
Muito Obrigado... Muito Obrigado...
Fico grato pela sua colaboração... tudo esta ok... como deveria ser...
Um abraço meus amigos...
Fico grato pela sua colaboração... tudo esta ok... como deveria ser...
Um abraço meus amigos...
GOSTEI 0
Marco Salles
22/07/2006
Sei que esta tudo resolvido , mas como a duvida de uns pode ser a duvida de outros amanhã . eu sinceramente não entendi porque que o promeiro post do Aroldo não solucioneou o problema :cry: :cry: :cry:
A dbGrid possui um manipulador de evento para o duplo clique. Adicione algo como:
Aroldo
Adelor da Silva
Não deveria capturar o registro selecionado da Grid , sendo ele primeiro , ultimo , ou do meio ??? :cry: :cry: :cry:
A dbGrid possui um manipulador de evento para o duplo clique. Adicione algo como:
Aroldo
Código:
procedure TForm2.DBGrid1DblClick(Sender: TObject);
begin
EditCodCliente.Text := TABELACodCliente.AsString;
EditNomeCliente.Text := TABELANomeCliente.Value;
end;
Adelor da Silva
da forma que você passou ele captura o primeiro registro da Tabcliente cadastrado...
Não deveria capturar o registro selecionado da Grid , sendo ele primeiro , ultimo , ou do meio ??? :cry: :cry: :cry:
GOSTEI 0
Adelor Silva
22/07/2006
É que se eu fizer da forma que o Aroldo passou... (reforço que agradeço toda a ajuda, indiferente de quem postou...)
begin
EditCodCliente.Text := TABELACodCliente.AsString;
EditNomeCliente.Text := TABELANomeCliente.Value;
end;
eu estaria pegando direto da tabela_Cliente...
e o que eu precisava era pegar da ZQuery_Cliente... Quando eu clico duas vezes no DBGrid1 (que esta ligado a ZQuery_Cliente) tenho que passar estas informações para os Edits... a linha de comando que eu não sabia era justamente:
procedure TFrmPsqCli.DBGrid1DblClick(Sender: TObject);
begin
FrmLote.DBEdit4.Text := DmDados.QryPsqCli.FieldByName(´NmCli´).AsString;
FrmLote.DBEdit3.Text := DmDados.QryPsqCli.FieldByName(´CodCli´).AsString;
end;
begin
EditCodCliente.Text := TABELACodCliente.AsString;
EditNomeCliente.Text := TABELANomeCliente.Value;
end;
eu estaria pegando direto da tabela_Cliente...
e o que eu precisava era pegar da ZQuery_Cliente... Quando eu clico duas vezes no DBGrid1 (que esta ligado a ZQuery_Cliente) tenho que passar estas informações para os Edits... a linha de comando que eu não sabia era justamente:
procedure TFrmPsqCli.DBGrid1DblClick(Sender: TObject);
begin
FrmLote.DBEdit4.Text := DmDados.QryPsqCli.FieldByName(´NmCli´).AsString;
FrmLote.DBEdit3.Text := DmDados.QryPsqCli.FieldByName(´CodCli´).AsString;
end;
GOSTEI 0
Marco Salles
22/07/2006
mas o que o aroldo , acredito , eu lhe sugeriu , não era para voce pegar os dados da tabela Cleinte,.. Ele nen sabia que voce tinha esta tabela no seu projeto , qual era os seus Tfields , seu Componentes de Acesso etc...
. Ele apenas usou um termo generico , aonde ele lhe quis indicar o evento , aonde voce pudesse capturar o que voce estava proprondo...
Por isso eu insiste no tópico , que do jeito que foi finalizado , deu a entender que o evento OnDBGrid1DblClick [b:641e327efe]não[/b:641e327efe] lhe serveria, o que não é verdade
. Ele apenas usou um termo generico , aonde ele lhe quis indicar o evento , aonde voce pudesse capturar o que voce estava proprondo...
Por isso eu insiste no tópico , que do jeito que foi finalizado , deu a entender que o evento OnDBGrid1DblClick [b:641e327efe]não[/b:641e327efe] lhe serveria, o que não é verdade
GOSTEI 0
Adelor Silva
22/07/2006
Acredito ter entendido o que você quis dizer... mas devido a minha inesperiencia... no assunto... não entendi quando o Aroldo passou a dica... gostaria de pedir desculpas ao Aroldo... afinal sou novato e estou estudando Delphi em casa nos finais de semana... sempre fui apaixonado pela idéia de poder programar... mas na minha cidade (Taió-SC) não temos por perto um curso que traga este conhecimento... ao conhecer este forum notei que o pessoal tira várias dúvidas...
Entendo que as vezes é um pouco difícil ajudar, principalmente aos iniciante como eu... mas é digamos minha unica forma de aprender programação... e fico muito feliz e agradecido por ela existir...
Entendo sua preocupação com o fato de eu dizer que o post do Aroldo não havia solucionado minha dúvida... mas foi por ignorância minha mesmo...
Mas volto a agradecer a todos... incluseve você Marcos... Pois posso ver que todos levam a sério as participações... até mesmo a dos iniciantes como eu... e é justamente por isso que eu participo e faço comentários positivos ao www.devmedia.com.br quando estou discutindo com amigos sobre programação...
Um Abraço a Todos...
Entendo que as vezes é um pouco difícil ajudar, principalmente aos iniciante como eu... mas é digamos minha unica forma de aprender programação... e fico muito feliz e agradecido por ela existir...
Entendo sua preocupação com o fato de eu dizer que o post do Aroldo não havia solucionado minha dúvida... mas foi por ignorância minha mesmo...
Mas volto a agradecer a todos... incluseve você Marcos... Pois posso ver que todos levam a sério as participações... até mesmo a dos iniciantes como eu... e é justamente por isso que eu participo e faço comentários positivos ao www.devmedia.com.br quando estou discutindo com amigos sobre programação...
Um Abraço a Todos...
GOSTEI 0
Marco Salles
22/07/2006
é isso ai amigo . estamos sempre á disposição para trocarmos nossas experincias
GOSTEI 0