IdentifiantMot de passe
Loading...
Mot de passe oublié ?Je m'inscris ! (gratuit)
Navigation

Inscrivez-vous gratuitement
pour pouvoir participer, suivre les réponses en temps réel, voter pour les messages, poser vos propres questions et recevoir la newsletter

Bases de données Delphi Discussion :

"Tout sélectionner" dans un DBGrid


Sujet :

Bases de données Delphi

  1. #1
    Membre habitué
    Femme Profil pro
    Ingénieur développement logiciels
    Inscrit en
    Mai 2006
    Messages
    121
    Détails du profil
    Informations personnelles :
    Sexe : Femme
    Localisation : France

    Informations professionnelles :
    Activité : Ingénieur développement logiciels
    Secteur : Aéronautique - Marine - Espace - Armement

    Informations forums :
    Inscription : Mai 2006
    Messages : 121
    Points : 127
    Points
    127
    Par défaut "Tout sélectionner" dans un DBGrid
    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

  2. #2
    Membre averti Avatar de Bejaia-In
    Inscrit en
    Avril 2006
    Messages
    365
    Détails du profil
    Informations forums :
    Inscription : Avril 2006
    Messages : 365
    Points : 392
    Points
    392
    Par défaut
    Peut-être avec les petites modifications :
    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
    16
    17
    18
    19
    20
    21
    procedure TForm1.Button1Click(Sender: TObject);
    var i,R:integer;
    begin
      with DBGrid1.DataSource.DataSet do
      begin
        DisableControls;
        R:=RecordCount;//Si c'est possible.
        First;
        //while not eof do
        with DBGrid1.SelectedRows do begin 
         for i:=1 to R do
         begin
           //DBGrid1.SelectedRows.CurrentRowSelected := True;
          CurrentRowSelected := True; 
          Next;
         end;
        end;
        First ;
        EnableControls;
      end;
    end;
    ....................................................................
    Aidez-vous... Dieu vous aideras et nous aussi..
    ....................................................................

Discussions similaires

  1. Réponses: 15
    Dernier message: 21/02/2007, 17h29
  2. Cellule sélectionnée dans un DBGrid
    Par PadawanDuDelphi dans le forum Delphi
    Réponses: 9
    Dernier message: 11/09/2006, 17h03
  3. ligne sélectionnée dans une dbGrid
    Par RBIK dans le forum Bases de données
    Réponses: 3
    Dernier message: 06/07/2004, 17h13
  4. Sélectionner une ligne dans une DBGrid
    Par RBIK dans le forum Bases de données
    Réponses: 13
    Dernier message: 01/07/2004, 17h13

Partager

Partager
  • Envoyer la discussion sur Viadeo
  • Envoyer la discussion sur Twitter
  • Envoyer la discussion sur Google
  • Envoyer la discussion sur Facebook
  • Envoyer la discussion sur Digg
  • Envoyer la discussion sur Delicious
  • Envoyer la discussion sur MySpace
  • Envoyer la discussion sur Yahoo