Supprimer une ligne sélctionnée dans un stinggrig [Résolu]

Signaler
Messages postés
43
Date d'inscription
mardi 23 septembre 2003
Statut
Membre
Dernière intervention
13 avril 2005
-
Messages postés
43
Date d'inscription
mardi 23 septembre 2003
Statut
Membre
Dernière intervention
13 avril 2005
-
Bonjour,
Dans un stringgrid, comment peut-on supprimer les données qui se trouvent dans une ligne que l'on aura sélectionné?
Merci de votre aide.

5 réponses

Messages postés
1119
Date d'inscription
lundi 4 février 2002
Statut
Membre
Dernière intervention
4 octobre 2006
7
Hello,



Voici une fonction qui te permet de détruire la ligne désirée d'un stringgrid :


<li>Tu lui passes la ligne</li>
<li>Puis ton stringgrid</li>
<li>La fonction te retournera True si tout c'est bien passé ou false en cas d'erreur

</li>

function DeleteRowStringGrid(Row : Integer; var StrGrid : TStringGrid) : Boolean;



var

I,J : Integer;

List : Array of TStringList;



begin

Result := True;



Try

SetLength(List,StrGrid.ColCount); {Dimensionnement du tableau dynamique}



For I:=0 to High(List) do List[I] := TStringList.Create; {Création des StringList}



Try



For I:=0 to High(List) do

begin

{Récupération des données du stringrid dans les tstringlist}



For J:=0 to StrGrid.RowCount-1 do

List[I].Add(StrGrid.Cells[I,J]);

end;



For I:=0 to High(List) do List[I].Delete(Row); {Destruction de la ligne}



{On enleve une ligne au stringrid}

StrGrid.RowCount := StrGrid.RowCount - 1;



For I:=0 to High(List) do

begin

{remet les résultats dans le stringrid}



For J:=0 to StrGrid.RowCount-1 do

StrGrid.Cells[I,J] := List[I].Strings[J];

end;

Finally



For I:=0 to High(List) do List[I].Free; {Libération de la mémoire}

end;

Except

Result := False;

end;

end;

Bonne prog,
JMP77.

N'oubliez pas de cliquer sur réponse acceptée.
Messages postés
1119
Date d'inscription
lundi 4 février 2002
Statut
Membre
Dernière intervention
4 octobre 2006
7
Hello,



Est ce que tu veux juste vider les données de toutes les cellules de la ligne ou bien monter les lignes du dessous d'un cran ?

Bonne prog,
JMP77.

N'oubliez pas de cliquer sur réponse acceptée.
Messages postés
43
Date d'inscription
mardi 23 septembre 2003
Statut
Membre
Dernière intervention
13 avril 2005

merci jmp77,

je veux supprimer les données de cette ligne.

Imaginons que pour une raison quelconque (par ex. un encodage erroné),
je veuille supprimer une ligne et toutes ses éléments. Que fais-je?
Messages postés
43
Date d'inscription
mardi 23 septembre 2003
Statut
Membre
Dernière intervention
13 avril 2005

bon, essayons d'etre plus clair,

je commande des médicaments pour un pensionnaire de maison de repos
dans une liste de médicaments. Ma commande apparait dans une grille et
je m'appercois que j'ai commandé deux fois le meme (medicament). Je
sélectionne la ligne en trop et...je voudrais qu'elle disparaisse de ma
commande.
Messages postés
43
Date d'inscription
mardi 23 septembre 2003
Statut
Membre
Dernière intervention
13 avril 2005

jmp, merci pour ta réponse