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 :

[ListView]Modifier 1 cellule


Sujet :

Composants VCL Delphi

Vue hybride

Message précédent Message précédent   Message suivant Message suivant
  1. #1
    Membre expérimenté
    Avatar de mohamed
    Profil pro
    Inscrit en
    Avril 2002
    Messages
    217
    Détails du profil
    Informations personnelles :
    Localisation : France, Paris (Île de France)

    Informations forums :
    Inscription : Avril 2002
    Messages : 217
    Par défaut [ListView]Modifier 1 cellule
    Bonjour,
    j'ai des problèmes pour modifier les cellules d'1 listview!!
    En fait je voudrais dans mon listview pouvoir modifier certaines cellules vides ou non.

    Merci.

  2. #2
    Membre émérite
    Avatar de Bloon
    Homme Profil pro
    Consultant Freelance
    Inscrit en
    Avril 2002
    Messages
    467
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Localisation : France

    Informations professionnelles :
    Activité : Consultant Freelance
    Secteur : Conseil

    Informations forums :
    Inscription : Avril 2002
    Messages : 467
    Par défaut
    Les lignes sont représentées par les TListItem. La première colonne est le Caption du TListItem, les autres colonnes sont les SubItems du TListItem :

    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    1
    2
    3
    4
    5
    6
    7
    8
    9
    10
    11
    12
    13
    14
    15
    16
    // Renvoie le contenu de la cellule (x,y) de listview
    // (numérotation à partir de 0)
    function getCellule(listView : TListView; x, y : integer): string;
    var
      item : TListItem;
    begin
      result := '';
      if (y >= 0) and (y < ListView.Items.Count) then
      begin
        item := ListView.Items[y];
        if (x = 0) then
          result := item.Caption
        else if (x > 0) and (x <= item.SubItems.Count) then
          result := item.subItems[x - 1];
      end;
    end;
    pour écrire :
    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    1
    2
    3
    4
    5
    6
    7
    8
    9
    10
    11
    12
    13
    14
    15
    16
    17
    18
    procedure setCellule(listView : TListView; x, y : integer; valeur : string);
    var
      item : TListItem;
    begin
      if (y >= 0) and (y < ListView.Items.Count) then
      begin
        item := ListView.Items[y];
        if (x = 0) then
          item.Caption := valeur
        else if (x > 0) and (x < listView.Columns.Count) then
        begin
          // ajout des subitems manquants
          while (item.SubItems.Count < x) do
            item.SubItems.Add('');
          item.subItems[x - 1] := valeur;
        end;
      end;
    end;
    Bloon

  3. #3
    Membre expérimenté
    Avatar de mohamed
    Profil pro
    Inscrit en
    Avril 2002
    Messages
    217
    Détails du profil
    Informations personnelles :
    Localisation : France, Paris (Île de France)

    Informations forums :
    Inscription : Avril 2002
    Messages : 217
    Par défaut
    Merci.

    Mais je crois que je ne suis pas assez clair!!
    En fait moi mon problème est surtout côté interface!!
    En fait quand je double-click sur mon ListView,il ne me met pas facilement en mode modification!!!

  4. #4
    Membre expérimenté
    Profil pro
    Inscrit en
    Septembre 2003
    Messages
    298
    Détails du profil
    Informations personnelles :
    Localisation : France

    Informations forums :
    Inscription : Septembre 2003
    Messages : 298
    Par défaut
    Il n'y a que la première colonne qui est modifiable en cliquant dessus c'est à dire caption.

  5. #5
    Expert confirmé
    Avatar de smyley
    Profil pro
    Inscrit en
    Juin 2003
    Messages
    6 270
    Détails du profil
    Informations personnelles :
    Localisation : France

    Informations forums :
    Inscription : Juin 2003
    Messages : 6 270
    Par défaut
    en effet. Pour l'édition de chaque cellule de manière indépendante, les composants *Grid sont là pour ça ( StringGrid, etc ... )

Discussions similaires

  1. [VBA] Modifier des cellules excel en fonction de leur couleur
    Par Tententai dans le forum VBA Access
    Réponses: 2
    Dernier message: 27/03/2007, 18h14
  2. [EXCEL] Modifier la cellule liée d'une liste déroulante
    Par stéphane_ais2 dans le forum Macros et VBA Excel
    Réponses: 9
    Dernier message: 31/03/2006, 11h18
  3. Comment modifier une cellule dans un JTable
    Par @yoyo dans le forum Composants
    Réponses: 10
    Dernier message: 22/03/2006, 16h48
  4. modifier une cellule deja defini par un css
    Par GroRelou dans le forum Mise en page CSS
    Réponses: 8
    Dernier message: 18/04/2005, 09h26

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