Enregistrements sélectionnés dans une dbgrid

cs_manudel Messages postés 63 Date d'inscription lundi 29 avril 2002 Statut Membre Dernière intervention 7 mars 2005 - 13 août 2002 à 22:56
cs_Nono40 Messages postés 962 Date d'inscription mercredi 3 avril 2002 Statut Membre Dernière intervention 12 septembre 2006 - 14 août 2002 à 22:09
Mon but est de sélectionner certains enregistrements (ou tous) dans une DBGrid (options rowselect et multiselect à true).

En fonction des enregistrements qui sont sélectionnés, je dois récupérer les données correspondantes, à partir d'un dataset.

Comment déterminer les enregistrements qui sont sélectionnés, et ceux qui ne le sont pas ?

Comment puis-je m'en servir pour les exporter après dans un fichier texte ?

1 réponse

cs_Nono40 Messages postés 962 Date d'inscription mercredi 3 avril 2002 Statut Membre Dernière intervention 12 septembre 2006 2
14 août 2002 à 22:09
Il existe une propriété de la grille qui permet d'avoir la liste des lignes sélectionnées. Si la grille est liée à un TTable tu peux faire quelque chose de la sorte :
procedure TForm1.Button1Click(Sender: TObject);
Var Chaine:ShortString;
i:Integer;
begin
With Table1 Do With DBGrid1.SelectedRows Do
Begin
// Pour tous les éléments selectionnés
For i:=1 To Count Do
Begin
// Aller sur la ligne voulue
Chaine:=Items[i-1];
GotoBookMark(@Chaine[1]);
// Juste un show message, mais tu peut faire ici ce que tu veux
ShowMessage(FieldByName('B').AsString);
End;
End;
end;

Il est vrai que l'utilisation des BookMark n'est pas bien décrite dans l'aide en ligne.

--- :sleepy) Nono du Moulin :sleepy) ---
0
Rejoignez-nous