Array
(
)

Evento de click no titulo do DBGrid?

Fernando Piccini
   - 07 nov 2005

Ola

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
   - 07 nov 2005

Alguem poderia me ajudar????

vlw


Fernando Piccini
   - 08 nov 2005

Alguma sugestão pessoal

vlw


Mrmarcelojr
   - 08 nov 2005

Kra, sério, jah tentei de tudo mas naum consegui.........fera, qdo vi q vc era de xxe fiquei ateh meia noite e meia tentando......ms seguinte....

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:


Rômulo Barros
   - 09 nov 2005

Use o evento OnTitleClick do seu DBGrid.

#Código

procedure TForm1.DBGrid1TitleClick(Column: TColumn);
begin
ShowMessage(´Nome da coluna: ´ + Column.Field.DisplayLabel);
end;



Fernando Piccini
   - 10 nov 2005

Bem! mas gostaria que este evento acontecesse quando quando fosse clicado com o botão direito no titulo.

mas mesmo assim agradeço pela atenção e se alguem puder contribuir ficaria grato :D

vlw


Adriano Santos
   - 10 nov 2005


Citação:
Bem! mas gostaria que este evento acontecesse quando quando fosse clicado com o botão direito no titulo.

mas mesmo assim agradeço pela atenção e se alguem puder contribuir ficaria grato :D

vlw


To tentando, tb...se conseguir algo eu posto.


Rômulo Barros
   - 10 nov 2005

Declare uma variável global:
#Código

MyButton: TMouseButton ;


No evento OnMouseDown do dbgrid faça:

#Código
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:

#Código
procedure TForm1.DBGrid1TitleClick(Column: TColumn);
begin
If(MyButton = mbRight)then
Begin
ShowMessage(´Nome da Coluna: ´ + Column.DisplayName);
End;
end;


Acho q isso já irá ajudar um pouco.


Martins
   - 10 nov 2005

A minha solução seria essa.

Criaria uma variavel global N: Integer

No evento OnColEnter eu colocaria.
#Código


procedure TFxxxxxx.DBGrid1ColEnter(Sender: TObject);
begin
n:= DBGrid1.SelectedIndex;
end;


No evento OnMouseDown eu colocaria.

#Código

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


Rômulo Barros
   - 10 nov 2005


Citação:
A minha solução seria essa.

Criaria uma variavel global N: Integer

No evento OnColEnter eu colocaria.
#Código


procedure TFxxxxxx.DBGrid1ColEnter(Sender: TObject);
begin
n:= DBGrid1.SelectedIndex;
end;


No evento OnMouseDown eu colocaria.

#Código

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.


[u:2ad59b500a]Boa.[/u:2ad59b500a]
Problema Solucionado !!! :wink: :wink:

Boa Sorte!!


Martins
   - 11 nov 2005


Citação:

Citação:
A minha solução seria essa.

Criaria uma variavel global N: Integer

No evento OnColEnter eu colocaria.
#Código


procedure TFxxxxxx.DBGrid1ColEnter(Sender: TObject);
begin
n:= DBGrid1.SelectedIndex;
end;


No evento OnMouseDown eu colocaria.

#Código

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.


[u:c67bf77c3f]Boa.[/u:c67bf77c3f]
Problema Solucionado !!! :wink: :wink:

Boa Sorte!!

Aê Rômulo valew compadre, um abraço p/ vc, é sempre bom poder contar com seus posts aqui no fórum, vê se não some.

Falow!!!