Evento de click no titulo do DBGrid?
07/11/2005
0
Gostaria de saber se tem como mostrar uma mensagem quando o usuario der um clique
no titulo de uma coluna do DBGrid?
Observação: O clique tem que ser com mouse lado direito, pois hoje ja existe um
evento quando clicado o o botão esquerdo.
Gostaria que conforme a coluna que o usuario clicar apresentasse um showMessage com
o nome da coluna.
Desde ja agradeço e espero q alguem possa me ajudar
abraço a todos :D
Fernando Piccini
Posts
08/11/2005
Mrmarcelojr
Tenta acha alguma funçção que campture a tecla direita do mouse.......
da uma procurada nda API controls, lah deve ter alguma coisa....
Desculpe, ms naum pude lhe ajudar muito neh.... :oops:
09/11/2005
Rômulo Barros
procedure TForm1.DBGrid1TitleClick(Column: TColumn); begin ShowMessage(´Nome da coluna: ´ + Column.Field.DisplayLabel); end;
10/11/2005
Fernando Piccini
mas mesmo assim agradeço pela atenção e se alguem puder contribuir ficaria grato :D
vlw
10/11/2005
Adriano Santos
To tentando, tb...se conseguir algo eu posto.
10/11/2005
Rômulo Barros
MyButton: TMouseButton ;
No evento OnMouseDown do dbgrid faça:
procedure TForm1.DBGrid1MouseDown(Sender: TObject; Button: TMouseButton; Shift: TShiftState; X, Y: Integer); begin MyButton := Button; If(Button = mbRight)Then DBGrid1TitleClick(DBGrid1.Columns[0]); end;
No evento OnTitleClick do dbgrid faça:
procedure TForm1.DBGrid1TitleClick(Column: TColumn); begin If(MyButton = mbRight)then Begin ShowMessage(´Nome da Coluna: ´ + Column.DisplayName); End; end;
[b:a6d86462cd]Acho q isso já irá ajudar um pouco.[/b:a6d86462cd]
10/11/2005
Martins
[b:133f5cd7ed]Criaria uma variavel global [color=red:133f5cd7ed]N: Integer[/color:133f5cd7ed] [/b:133f5cd7ed]
No evento [b:133f5cd7ed]OnColEnter[/b:133f5cd7ed] eu colocaria.
procedure TFxxxxxx.DBGrid1ColEnter(Sender: TObject); begin n:= DBGrid1.SelectedIndex; end;
No evento [b:133f5cd7ed]OnMouseDown[/b:133f5cd7ed] eu colocaria.
procedure TFxxxxx.DBGrid1MouseDown(Sender: TObject; Button: TMouseButton; Shift: TShiftState; X, Y: Integer); begin if button = mbRight then ShowMessage(´Coluna: ´ + DbGrid1.Columns[n].FieldName); end;
Seria isso, agora fica por conta de seu talendo de desenvolvedor.
Boa Sorte!!
10/11/2005
Rômulo Barros
procedure TFxxxxxx.DBGrid1ColEnter(Sender: TObject); begin n:= DBGrid1.SelectedIndex; end;
procedure TFxxxxx.DBGrid1MouseDown(Sender: TObject; Button: TMouseButton; Shift: TShiftState; X, Y: Integer); begin if button = mbRight then ShowMessage(´Coluna: ´ + DbGrid1.Columns[n].FieldName); end;
11/11/2005
Martins
procedure TFxxxxxx.DBGrid1ColEnter(Sender: TObject); begin n:= DBGrid1.SelectedIndex; end;
procedure TFxxxxx.DBGrid1MouseDown(Sender: TObject; Button: TMouseButton; Shift: TShiftState; X, Y: Integer); begin if button = mbRight then ShowMessage(´Coluna: ´ + DbGrid1.Columns[n].FieldName); end;
Aê [b:c67bf77c3f]Rômulo[/b:c67bf77c3f] valew compadre, um abraço p/ vc, é sempre bom poder contar com seus posts aqui no fórum, vê se não some.
Falow!!!
Clique aqui para fazer login e interagir na Comunidade :)