Olá! Friday, 29 de March de 2024.



Dicas CódigoFonte.net
Monday, 28 de August de 2006

Como trocar a coluna do DBGrid de lugar

Olá, neste artigo mostrarei um forma bastante interessante de trabalhar com as colunas do DBGrid. Faremos a troca de posição das colunas usando o evento onTitleClick do DBGrid.

Quando o usuário clicar em uma coluna esta passará a ser a primeira coluna e a primeira trocará de lugar com a coluna clicada. A primeira coluna poderia ser usada para filtrar e/ou ordenar a tabela e sendo a coluna 0 (zero) fica mais fácil para identificar por qual coluna nossa table está ordenada/filtrada.

Desenhando o projeto

O design para este exemplo é bem compacto. Insira um TTable, um DataSource e um DBGrid. Altere suas propriedades conformes as tabelas abaixo. Sua tela deve se parecer com a Figura 1.

Clique para ver a imagem em seu tamanho real
Tabela 3. Propriedades do TDbGrid

Coluna colorida

Uma coisa que uso com bastante freqüência é colorir a primeira coluna, assim fica ainda mais fácil identificar por qual coluna o filtro/ordenação será feito. Para isso:

Clique duas vezes no DBGrid, adicione os todos campos. Em seguida selecione o primeiro campo, referente a primeira coluna, e mude a propriedade Color para clInfoBk ou uma cor de sua preferência.

Clique para ver a imagem em seu tamanho real
Figura 1. Legenda explicativa da figura

Programação

Você verá que a programação não exige alto conhecimento. Apenas pegamos o nome da coluna selecionada e seu index. Em seguida “dizemos” que o FieldName da colunca selecionada é igual ao FieldName da coluna 0(zero), ou seja, o primeiro campo. Agora basta igualar o FieldName da coluna zero ao FieldName da coluna selecionada. Veja a Listagem 1.

Listagem 1. Descrição da listagem

procedure TForm1.DBGrid1TitleClick(Column: TColumn); var nmColSel: string; idColSel: Integer; begin nmColSel := Column.FieldName; idColSel := Column.Index; with DBGrid1 do begin Columns[idColSel].FieldName := Columns[0].FieldName; Columns[0].FieldName := nmColSel; end; end;

Conclusões

Neste artigo aprendemos a trocar a coluna de um DBGrid em runtime e tornando sua visualização mais nítida.

Por Adriano Santos
Adriano Santos ([email protected]) é desenvolvedor Delphi desde 1998. Professor e programador PHP. Bacharel em Comunicação Social pela Universidade Cruzeiro do Sul, SP. É colunista e membro da Comissão Editorial da revista ClubeDelphi.

Conheça nosso parceiro:


Comentários do artigo [Novo comentário]

Nenhum comentário, seja o primeiro a comentar.
Para adicionar um comentário você deve efetuar o login


Gostou do CódigoFonte.net? Quer indicar a um amigo?
Preencha os campos a seguir.
Seu Nome:
Seu E-mail:
E-mail de seu Amigo:


CodigoFonte.net » Meu Mural » Competiva - Criação de Sites » Todos os Direitos Reservados © 2002/2010