Bonjour,
je teste une TTMSFMXGrid de TMS Software. Le composant ne me semble pas fonctionner comme prévu.
Je me réfère à la page 55
Je suis en SelectionMode := smDisjunctRow;
ce code fonctionne correctement :
Mais l'autre code plante le projet
Code : Sélectionner tout - Visualiser dans une fenêtre à part
1
2
3
4
5
6
7
8
9 var i: integer; begin for i := 0 to TMSFMXGrid1.RowCount - 1 do begin if TMSFMXGrid1.RowSelect[i] then // do something with the selected row end; end;
Je ne sais pas si c'est propre à ma version XE7. J'ai téléchargé le pack FMX d'essai ce matin. De ce fait, je ne sais pas si le parcours est plus rapide avec la deuxième méthode.
Code : Sélectionner tout - Visualiser dans une fenêtre à part
1
2
3
4
5
6
7
8
9 var i: integer; begin for i := 0 to TMSFMXGrid1.RowSelectionCount - 1 do begin rowindex := TMSFMXGrid1.SelectedRow[i]; // do something with the selected row rowindex here end; end;
Je rencontre une autre imperfection au niveau du tri.
Je remplis donc une Grid en ajoutant des lignes en bas et en sélectionnant les 3 lignes ajoutées. Et je lance un tri comme indiqué dans la documentation.
Code : Sélectionner tout - Visualiser dans une fenêtre à part
1
2
3
4
5
6
7 for i := 0 to 2 do with Grid1 do begin InsertRow(RowCount); ... RowSelect[RowCount -1] := true; end;
Le tri s'effectue bien mais la sélection reste sur les 3 dernières lignes alors que le tri a déplacé les 3 lignes ajoutées : la sélection ne "suit" pas le déplacement des lignes par le tri et donc la sélection change. Il y a moyen de parer le coup ? C'est normal ou il s'agit d'un bug ?
Code : Sélectionner tout - Visualiser dans une fenêtre à part
1
2
3
4
5
6
7 with Grid1 do begin SortIndexes.Clear; SortIndexes.AddIndex(1, sdAscending); SortIndexes.AddIndex(2, sdDescending); SortIndexed; end;
Merci. Zac
Partager