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

cs_piscine 43 Messages postés mardi 23 septembre 2003Date d'inscription 13 avril 2005 Dernière intervention - 8 mars 2005 à 13:09 - Dernière réponse : cs_piscine 43 Messages postés mardi 23 septembre 2003Date d'inscription 13 avril 2005 Dernière intervention
- 11 mars 2005 à 13:27
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.
Afficher la suite 

Votre réponse

5 réponses

Meilleure réponse
jmp77 1232 Messages postés lundi 4 février 2002Date d'inscription 4 octobre 2006 Dernière intervention - 9 mars 2005 à 10:06
3
Merci
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.

Merci jmp77 3

Avec quelques mots c'est encore mieux Ajouter un commentaire

Codes Sources a aidé 93 internautes ce mois-ci

Commenter la réponse de jmp77
jmp77 1232 Messages postés lundi 4 février 2002Date d'inscription 4 octobre 2006 Dernière intervention - 8 mars 2005 à 14:47
0
Merci
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.
Commenter la réponse de jmp77
cs_piscine 43 Messages postés mardi 23 septembre 2003Date d'inscription 13 avril 2005 Dernière intervention - 8 mars 2005 à 22:49
0
Merci
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?
Commenter la réponse de cs_piscine
cs_piscine 43 Messages postés mardi 23 septembre 2003Date d'inscription 13 avril 2005 Dernière intervention - 8 mars 2005 à 22:59
0
Merci
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.
Commenter la réponse de cs_piscine
cs_piscine 43 Messages postés mardi 23 septembre 2003Date d'inscription 13 avril 2005 Dernière intervention - 11 mars 2005 à 13:27
0
Merci
jmp, merci pour ta réponse
Commenter la réponse de cs_piscine

Vous n'êtes pas encore membre ?

inscrivez-vous, c'est gratuit et ça prend moins d'une minute !

Les membres obtiennent plus de réponses que les utilisateurs anonymes.

Le fait d'être membre vous permet d'avoir un suivi détaillé de vos demandes et codes sources.

Le fait d'être membre vous permet d'avoir des options supplémentaires.