DbGrid Identificar se uma coluna está sendo arrastada.

18/05/2020

0

Olá pessoal !!
Alguém poderia me ajudar?
Eu uso, como muitos, o click sobre o título da coluna de um dbgrid para alterar a organização dos dados, porém, quando desejo mover as colunas, também clicando no título e arrastando, não estou conseguindo fazer com que a ordem não se modifique junto.
A pergunta é a seguinte: teria como no OnTitleClick identificar se aquela coluna está sendo movida e dessa forma poder inativar a troca de organização?
Desde já, muito obrigado pela ajuda!
Márcio Brigatto

Márcio Brigatto

Responder

Posts

24/04/2021

Márcio Brigatto

Olá pessoal !!
Alguém poderia me ajudar?
Eu uso, como muitos, o click sobre o título da coluna de um dbgrid para alterar a organização dos dados, porém, quando desejo mover as colunas, também clicando no título e arrastando, não estou conseguindo fazer com que a ordem não se modifique junto.
A pergunta é a seguinte: teria como no OnTitleClick identificar se aquela coluna está sendo movida e dessa forma poder inativar a troca de organização?
Desde já, muito obrigado pela ajuda!


Sempre tive o mesmo problema e agora encontrei uma solução bastante simples:

procedure TForm1.DbGrid1ColumnMoved(Sender: TObject; FromIndex, ToIndex: Integer);
begin
DbGrid1.Tag := 1;
end;


procedure TForm1.DbGrid1TitleClick(Column: TColumn);
begin
if DbGrid1.Tag = 0 then
begin
{
Seu código
}
end;
DbGrid1.Tag := 0;
end;

Espero ter ajudado.
Responder

Assista grátis a nossa aula inaugural

Assitir aula

Saiba por que programar é uma questão de
sobrevivência e como aprender sem riscos

Assistir agora

Utilizamos cookies para fornecer uma melhor experiência para nossos usuários, consulte nossa política de privacidade.

Aceitar