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.
Version imprimable
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.
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 :
pour écrire :Code:
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;
BloonCode:
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;
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!!!
Il n'y a que la première colonne qui est modifiable en cliquant dessus c'est à dire caption.
en effet. Pour l'édition de chaque cellule de manière indépendante, les composants *Grid sont là pour ça ( StringGrid, etc ... )