dbGrid ordenação

04/11/2005

Pessoal

Estou precisando fazer um dbgrid que ordene os registro(em ordem crescente e descrescente) conforme o usuario desejar..o dbgrid deve ordenar pelo campo que o usuario escolheu (ele da um clique no titulo do campo, igual o que windows faz).

[color=red:72193f0dff]A unica forma que eu percebi de fazer isso, foi passar uma nova sql para o banco mudando a clausula ´order by´[/color:72193f0dff]

Gostaria de saber se essa é a unica forma de se fazer isso!

Grato:


Henrytpc

Respostas

04/11/2005

Massuda

Gostaria de saber se essa é a unica forma de se fazer isso!
É a única forma, pois o DBGrid é um espelho do DataSet ligado a ele; internamente o DBGrid não armazena dados, ele apenas mostra os dados que estão no DataSet.


Responder Citar

04/11/2005

Firekiller

Mas se você estiver usando um ClientdataSet a ordenaç;ão pode ser feita usando IndexFieldNames. Dessa forma não precisa trocar o Order By no SQL. Existe até uma grid, chamada CDSDbGrid (se não me engano é isso), disponível no site [url]www.distribucon.com[/url], que pode ser baixada (inclusive os fontes) e que tem essa opção de ordenar ao clicar no título, inclusive, se você segurar o SHIFT, pode ordenar por mais de 1 campo. Ele até desenha aquela seta que tem indicando por qual campo está ordenado e tals.


Responder Citar

04/11/2005

Massuda

se você estiver usando um ClientdataSet...
Interessante.


Responder Citar