Trocar e Atualizar Valor Booleano em Grid
07/03/2006
0
Boa tarde, pessoal...
Tenho uma Grid que é alimentada por uma ADOQuery onde há um campo do tipo Boolean (Sim/Nâo) que é um campo de uma tabela Access. Na Grid os campos saem como ´True´ ou ´False´.
Há uma forma, sem usar campo Lookup, de que saia ´Sim´ ou ´Nâo´ no lugar, podendo ainda ser atualizado/trocado (´Sim´ para ´Não´ e vice-versa) utilizando por exemplo um combobox na coluna ?
Espero ter explicado direito.
Obrigado pela ajuda.
Tenho uma Grid que é alimentada por uma ADOQuery onde há um campo do tipo Boolean (Sim/Nâo) que é um campo de uma tabela Access. Na Grid os campos saem como ´True´ ou ´False´.
Há uma forma, sem usar campo Lookup, de que saia ´Sim´ ou ´Nâo´ no lugar, podendo ainda ser atualizado/trocado (´Sim´ para ´Não´ e vice-versa) utilizando por exemplo um combobox na coluna ?
Espero ter explicado direito.
Obrigado pela ajuda.
Adalberto
Curtir tópico
+ 0
Responder
Posts
07/03/2006
Paullsoftware
certo, mais só uma ideia... não seria legal usar Chekebox???
daí vc adapta o código abaixo ao seu critério...
no OnCellClick do Grid
no OnCollEnter do Grid
no OnDrawColumnCell do Grid
é só uma ideia, mais espero ter ajudado! :wink:
daí vc adapta o código abaixo ao seu critério...
no OnCellClick do Grid
if Column.Field=DM_BANCO.DETLOCACAODEVOLVIDO then begin DM_BANCO.DETLOCACAO.Edit; if DM_BANCO.DETLOCACAODEVOLVIDO.AsString=´S´ then begin DM_BANCO.DETLOCACAODEVOLVIDO.AsString := ´N´; DM_BANCO.DETLOCACAO.Post; end else begin DM_BANCO.DETLOCACAODEVOLVIDO.AsString := ´S´; DM_BANCO.DETLOCACAO.Post; end; end;
no OnCollEnter do Grid
if DBGrid1.SelectedField=DM_BANCO.DETLOCACAODEVOLVIDO then DBGrid1.Options := DBGrid1.Options - [dgEditing] else DBGrid1.Options := DBGrid1.Options + [dgEditing];
no OnDrawColumnCell do Grid
if Column.Field=DM_BANCO.DETLOCACAODEVOLVIDO then begin DBGrid2.Canvas.FillRect(Rect); FPRINCIPAL.ImageList1.Draw(DBGrid2.Canvas,Rect.Left+10,Rect.Top+1,0); if DM_BANCO.DETLOCACAODEVOLVIDO.AsString = ´S´ then FPRINCIPAL.ImageList1.Draw(DBGrid2.Canvas,Rect.Left+10,Rect.Top+1,2)//Aqui carrego de um imagemList a segunda imagem que é uma imagem semelhante a um campo chekebox com seleção else FPRINCIPAL.ImageList1.Draw(DBGrid2.Canvas,Rect.Left+10,Rect.Top+1,1);//Aqui carrego de um imagemList a segunda imagem que é uma imagem semelhante a um campo chekebox sem seleção end;
é só uma ideia, mais espero ter ajudado! :wink:
Responder
Clique aqui para fazer login e interagir na Comunidade :)