OnClick em apenas uma coluna do dbGrid

Delphi

27/04/2006

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


Mmoreira

Mmoreira

Curtidas 0

Respostas

Cpd_arim

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

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 ...


GOSTEI 0
Lehapan

Lehapan

27/04/2006

Utilize o evento MouseMove do DBGrid:

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;
[/code]


GOSTEI 0
Mmoreira

Mmoreira

27/04/2006

lehapan,

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
POSTAR