OnClick em apenas uma coluna do dbGrid
Tenho um dbGrid onde é mostrado alguns campos da minha tabela ... o que eu to preciando fazer é colocar uma coluna no dbGrid com o texto:
(Baixar)
Daí quando o usuario passar o mouse neste texto e apenas neste texto o cursor mudar para: crHandPoint
e quando clicar no texto (Baixar) executar um sql pegando como valor para parametro alguma informação da linha clicada ...
Não sei se fui bem claro na minha duvida, se alguem puder me ajudar.
Valewss
(Baixar)
Daí quando o usuario passar o mouse neste texto e apenas neste texto o cursor mudar para: crHandPoint
e quando clicar no texto (Baixar) executar um sql pegando como valor para parametro alguma informação da linha clicada ...
Não sei se fui bem claro na minha duvida, se alguem puder me ajudar.
Valewss
Mmoreira
Curtidas 0
Respostas
Cpd_arim
27/04/2006
cara colega no evento on click do grid vc pode fazer isso sim, use um campo de status na tabela para fazer oq vc disse.
GOSTEI 0
Mmoreira
27/04/2006
cpd_arim
Eu poderia fazer no evento onClick mas ainda nao sei como fazer para mudar o cursor do mouse apenas qdo estiver sobre uma determinada coluna ... e mais o evendo onClick só funcionar nesta coluna ...
Eu poderia fazer no evento onClick mas ainda nao sei como fazer para mudar o cursor do mouse apenas qdo estiver sobre uma determinada coluna ... e mais o evendo onClick só funcionar nesta coluna ...
GOSTEI 0
Lehapan
27/04/2006
Utilize o evento MouseMove do DBGrid:
[/code]
procedure DBGridMouseMove(Sender: TObject; Shift: TShiftState; X, Y: Integer); var Coord: TGridCoord; begin Coord := DBGrid.MouseCoord( X, Y ); Coord.X; // Linha do Grid [b]Coord.Y; // Coluna do Grid, ou seja, indice da coluna[/b] end;
GOSTEI 0
Mmoreira
27/04/2006
lehapan,
Valew cara era isso mesmo que eu estava querendo, funcionou blz!!!
Só uma correção no seu código:
Se alguem precisar, eu fiz assim:
Valew cara era isso mesmo que eu estava querendo, funcionou blz!!!
Só uma correção no seu código:
// Coord.X -> Coluna do Grid
// Coord.Y -> Linha do Grid
Se alguem precisar, eu fiz assim:
if Coord.X = 2 then begin dbGridAniversariante.Cursor := crHandPoint; end else begin dbGridAniversariante.Cursor := crDefault; end;
GOSTEI 0