Indice Ascedente/Descendente
Tenho um componente ClientDataSet que alimenta um DBGrid e consigo indexar as informações do ClientDataSet a partir do da coluna selecionada, mas eu gostaria de dar a opção quando o usuário clicar na coluna se ele quer em ordem ascendente ou descente.
Como eu faço isto???
Desde já agradeço a ajuda de todos.
Como eu faço isto???
Desde já agradeço a ajuda de todos.
Andre_luis_c
Curtidas 0
Respostas
Massuda
18/02/2005
...mas eu gostaria de dar a opção quando o usuário clicar na coluna se ele quer em ordem ascendente ou descente.
Como eu faço isto???
Não sei se é isso que você queria, mas pode fazer como no Windows Explorer em modo Detalhes. Quando clica pela primeira vez numa coluna ordena ascendente, os cliques seguintes alternam entre ascendente/descendente, até você clicar em outra coluna.GOSTEI 0
Andre_luis_c
18/02/2005
Como eu faço para alternar indexação Ascendente/Descendente. no primeiro clique na coluna eu orderno ascendente no segundo clique descendente. No DBGrid.
GOSTEI 0
Massuda
18/02/2005
BD não é meu forte, por isso eu não saberia dizer de modo correto como mudar a indexação do ClientDataSet. Mas, quanto ao código da interface com o usuário, ele poderia ser mais ou menos assim:
type TSeuForm = class(... ... procedure SeuGridTitleClick(Column: TColumn); private ColunaOrdenada: TColumn; ColunaAscendente: Boolean; ... procedure TSeuForm.SeuGridTitleClick(Column: TColumn); begin if Column = ColunaOrdenada then ColunaAscendente := not ColunaAscendente; else begin ColunaOrdenada := Column; ColunaAscendente := True; end; if ColunaAscendente then // ordenar a coluna ordem ascendente else // ordenar a coluna ordem descendente end;
GOSTEI 0