Bonjour,

J'utilise une DBGrid dans laquelle s'affichent plusieurs milliers de lignes.
On a besoin d'un bouton qui fasse "sélectionner tout" dans la DBGrid.

Voici le code utilisé:
Code : Sélectionner tout - Visualiser dans une fenêtre à part
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
procedure TForm1.Button1Click(Sender: TObject);
begin
  with DBGrid1.DataSource.DataSet do
  begin
    DisableControls;
    First;
    while not eof do
    begin
      DBGrid1.SelectedRows.CurrentRowSelected := True;
      Next;
    end;
    First ;
    EnableControls;
  end;
end;
Ca marche très bien, sauf que sur 2000 lignes par exemple, ca peut prendre jusqu'à presque 30 minutes!!

Est-ce un problème d'indexation? Ou y a-t-il une autre méthode plus efficace pour séléctionner l'ensemble?
D'où cela pourrait-il venir?

Merci d'avance pour vos réponses