Bonjour à tous,
c'est encore moi avec mes questions.
Je voudrais avoir sur une forme un tableau de 30 ou 40 lignes, dont mettons 6 visibles, avec plusieurs colonnes : une pour un libelle texte, une pour un checkbox, une pour un TSpinEdit, et 3 ou 4 avec une valeur texte par exemple.
J'ai pensé au TGrid qui me semble adapté (encore que j'ai pas trouvé pour l'instant comment faire une colonne de TSpinEdit, mais je finirai bien par trouver.
Par contre j'ai un gros soucis : je fais comment pour mettre mes valeurs dans la grille ? D'après ce que j'ai compris,
NiveauxCompetences.Columns[0].CellControlByRow(i).Data := personnage.GetChoixCompetenceLibelle(NiveauxListe.ItemIndex + 1 , i);
me claque une exception parce que à un moment donné, si "i" est supérieur au nombre de colonnes affichées, ca plante parce qu'il semble que le TGrid ne contienne que les objets nécessaires pour la zone affichée.
Donc si j'ai bien compris, il faut que je gère moi même les listes de données pour mes colonnes, et la methode
1 2
| procedure TFFenetrePerso.NiveauxCompetencesGetValue(Sender: TObject; const Col,
Row: Integer; var Value: Variant); |
contiendra le code qui placera dans le contrôle la valeur dépendant le la conolle et la ligne parmi mes lignes que je tiens à jour moi même c'est bien ça ?
Du coup si j'extrapole un peu, je peux penser que la méthode ...SetValue me servira pour récupérer la valeur qui j'aurai saisi dans le TGrid à l'exécution histoire de mettre à jour mes listes de valeurs c'est ça ?
Au passage, si quelqu'un pouvait m'expliquer la raison d'un système aussi compliqué ça m'arrangerait bien...
Merci à tous...
Partager