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

Composants VCL Delphi Discussion :

Ajouter une ligne dans un Stringgrid


Sujet :

Composants VCL Delphi

  1. #1
    Futur Membre du Club
    Profil pro
    Inscrit en
    Février 2006
    Messages
    7
    Détails du profil
    Informations personnelles :
    Localisation : Suisse

    Informations forums :
    Inscription : Février 2006
    Messages : 7
    Points : 5
    Points
    5
    Par défaut Ajouter une ligne dans un Stringgrid
    Salut tout le monde!!!

    J'aimerais ajouter une ligne dans un stringgrid via un bouton. Mais je ne sais pas comment faire, car je suis un débutant.

    Pour le moment j'ai essayé : Stringgrid1.Rows.Add;

    Mais ca marche pas.

    Merci d'avance

  2. #2
    Modérateur
    Avatar de Rayek
    Homme Profil pro
    Développeur informatique
    Inscrit en
    Mars 2005
    Messages
    5 235
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Âge : 50
    Localisation : France, Haute Savoie (Rhône Alpes)

    Informations professionnelles :
    Activité : Développeur informatique
    Secteur : High Tech - Éditeur de logiciels

    Informations forums :
    Inscription : Mars 2005
    Messages : 5 235
    Points : 8 504
    Points
    8 504
    Par défaut
    Il n'y a pas de focntion a proprement parler d'ajout de ligne direct dans un stringgrid.
    Il faut que tu augementes la taille de la stringGrid et apres tu rajoutes tes infos à la fin

    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    1
    2
    3
    4
    5
    6
    7
     
    With StringGrid do
    begin
      RowCount := RowCount + 1;
      Cells[0,RowCount -1] := 'Test';
      Cells[1,RowCount -1] := 'Ici';
    end;
    Ce code rajoute une ligne au stringgrid et met dasn la cellule 0 le texte 'test' et dasn la cellule 1 le texte 'ici'.
    Si tu le mets dans un bouton, ca rajoutera a chaque fois une ligne avec ces deux valeurs

  3. #3
    Futur Membre du Club
    Profil pro
    Inscrit en
    Février 2006
    Messages
    7
    Détails du profil
    Informations personnelles :
    Localisation : Suisse

    Informations forums :
    Inscription : Février 2006
    Messages : 7
    Points : 5
    Points
    5
    Par défaut
    Merci beaucoup ça marche parfaitement. Par contre je sais pas comment mettre l'étiquette résolu

  4. #4
    Futur Membre du Club
    Profil pro
    Inscrit en
    Février 2006
    Messages
    7
    Détails du profil
    Informations personnelles :
    Localisation : Suisse

    Informations forums :
    Inscription : Février 2006
    Messages : 7
    Points : 5
    Points
    5
    Par défaut
    Ah si j'ai trouvé

  5. #5
    Futur Membre du Club
    Profil pro
    Inscrit en
    Février 2006
    Messages
    7
    Détails du profil
    Informations personnelles :
    Localisation : Suisse

    Informations forums :
    Inscription : Février 2006
    Messages : 7
    Points : 5
    Points
    5
    Par défaut
    Salut,

    Maintenant que l'ai mis comment on fait pour que les lignes restent et ne s'effacent pas car à chaque fois que je ferme l'application, elles reprenent la valeur initiale.

    MERCI DAVANCE

  6. #6
    Rédacteur
    Avatar de Pedro
    Profil pro
    Inscrit en
    Octobre 2003
    Messages
    5 411
    Détails du profil
    Informations personnelles :
    Localisation : France

    Informations forums :
    Inscription : Octobre 2003
    Messages : 5 411
    Points : 8 078
    Points
    8 078
    Par défaut
    Salut
    Tu n'as pas d'autres choix que de sauvegarder le compte de tes lignes soit dans un fichier (un TIniFile par exemple) ou dans la base de registre.
    Si par contre, tu veux que ce compte soit figé, il faut le changé en Design Time

  7. #7
    Expert éminent Avatar de Graffito
    Profil pro
    Inscrit en
    Janvier 2006
    Messages
    5 993
    Détails du profil
    Informations personnelles :
    Localisation : France

    Informations forums :
    Inscription : Janvier 2006
    Messages : 5 993
    Points : 7 903
    Points
    7 903
    Par défaut
    Bonjour,

    Pas de fonction tooute faite. Personnellement, je sauvegarde au format ASCII délimité. J'utilise une tstringlist qui comporte autant d'éléments que de lignes dans la grid. Chaque élément est constitué de la concaténation de toutes les cellules d'une même ligne séparées par ";" .
    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    1
    2
    3
    4
    5
    6
    7
    8
    9
    10
    11
    // à la sauvegarde
    mygrid.Rows[i].delimiter:=';'  ;
    for i:=0 to mygrid.rowcount-1 ;
    myTstringList.Add([mygrid.Rows[i].delimitedText)) ; 
    ...
    // à la restauration
    grid.rowcount:=myTstringList.count ;
    for i:=0 to myTstringList.count-1 ;
    mygrid.Rows[i].delimiter:=';'  ;
    Rows[i].delimitedText:=myTstringList[i] ; 
    ...
    Je n'ai pas testé les instructions delimiter et delimitedtext, parce que j'utilise d'habitude une trés ancienne bibli qui fait la mêmechose.

+ Répondre à la discussion
Cette discussion est résolue.

Discussions similaires

  1. [Débutant] Bug ajout d'une ligne dans un StringGrid
    Par dekalima dans le forum C++Builder
    Réponses: 6
    Dernier message: 15/12/2010, 14h20
  2. [vb6] Ajouter une ligne dans un tableau excel
    Par Asdorve dans le forum VB 6 et antérieur
    Réponses: 13
    Dernier message: 13/06/2006, 16h41
  3. Ajouter une ligne dans un DBGrid
    Par jbaers dans le forum Bases de données
    Réponses: 3
    Dernier message: 28/11/2005, 09h18
  4. Ajouter une ligne dans une liste via un POPUP
    Par seblo_scoqi dans le forum Général JavaScript
    Réponses: 4
    Dernier message: 25/01/2005, 16h20
  5. Déplacer la sélection d'une ligne dans un stringgrid
    Par jer64 dans le forum Composants VCL
    Réponses: 5
    Dernier message: 14/03/2003, 00h57

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