Récuperer les enregistrement d'une ligne dans une nouvelle formulaire

djejja Messages postés 11 Date d'inscription mardi 10 mai 2005 Statut Membre Dernière intervention 6 juin 2005 - 18 mai 2005 à 21:14
WhiteHippo Messages postés 1154 Date d'inscription samedi 14 août 2004 Statut Membre Dernière intervention 5 avril 2012 - 20 mai 2005 à 00:27
Salut,


Je suis en cours de realiser une application avec Delphi 2005 et une base sur Paradox7


J'ai un BDGrid qui contient tous les enregistrements d'une table, le but de mon application est d'afficher sur une autre fiche les champ d'une ligne sélectionnée avec l'utilisation du SelectedRows .


Mon idée est d'accéder tout d’abord au identifiant (Code) de ma table pour que je peut accéder au autres champs a partir de la base lui même.Le champ CODE occupe la premiére colonne.


Le problème que j'ai rencontrer est que l'instruction« DBGrid.SelectedRows.Items[0] ; »


Affiche le message d'erreur suivant lors de l'exécution : «indice de liste hors limites(0) »

Mercie pour l'aide
Hejer

3 réponses

WhiteHippo Messages postés 1154 Date d'inscription samedi 14 août 2004 Statut Membre Dernière intervention 5 avril 2012 3
19 mai 2005 à 00:24
Si tu as cette erreur c'est que le SelectedRows ne contient aucun élément (c'est à dire aucune ligne sélectionnée).
Il faut utiliser la propriété count qui te renvoie le nombre d'éléments.

if ( DBGrid.SelectedRows.Count>0 ) then
begin
// Utilisation ok de DBGrid.SelectedRows.Items[0] ;
end ;

Cordialement.
0
djejja Messages postés 11 Date d'inscription mardi 10 mai 2005 Statut Membre Dernière intervention 6 juin 2005
20 mai 2005 à 00:13
salut whitehippo,
c'est absolument faut se que tu m'a dit,parseque la base à partir de la quelle je remplis ma dbgrid comporte des enregistrements. Aussi bien que les lignes de la dbgrid que j'ai sélectionné sont pleinne.
Alors comment tu explique ce probleme.
Merci en tout cas de votre répense.j'espere que tu me repend le plus tôt possible.

Hejer
0
WhiteHippo Messages postés 1154 Date d'inscription samedi 14 août 2004 Statut Membre Dernière intervention 5 avril 2012 3
20 mai 2005 à 00:27
Si, par exemple, une liste contient trois éléments (1..3), et que l'on tente d'accéder à l'élément numéro 0, une exception "Indice de liste hors limites(0)" se déclenche.

Hors sachant que DBGrid.SelectedRows.items représente une liste dont le premier élément et donc indice est 0, j'en deduis que si tu as cette exception, c'est que ton DBGrid.SelectedRows.Items ne contient aucun élément.

Donc je persiste dans ce que j'ai dis !!

Cordialement.
0
Rejoignez-nous