cs_ridertart
Messages postés8Date d'inscriptionlundi 11 décembre 2006StatutMembreDernière intervention19 décembre 2006
-
18 déc. 2006 à 17:41
cs_Loda
Messages postés814Date d'inscriptionvendredi 3 novembre 2000StatutMembreDernière intervention30 juillet 2009
-
19 déc. 2006 à 09:31
Bonjour,
J'ai une petite question en delphi, je suppose que ce doit pas être très compliqué mais je ne sais pas comment faire et ca pourrait réduire la taille de mon programme !
Voila par exemple dans un boucle,
Je dois faire
StringGrid2.Cells[a,0] := ...
StringGrid3.Cells[a,0] := ...
StringGrid4.Cells[a,0] := ...
StringGrid5.Cells[a,0] := ...
StringGrid6.Cells[a,0] := ...
Et je cherche le moyen de nommé les composant dans la boucle par exemple
For i:=2 to 6 do
begin
StringGrid[i].Cells[a,0] := ...
end;
Or je sais que le [i] n'est pas bon (StringGrid[i].Cells[a,0] := ...)
WhiteHippo
Messages postés1154Date d'inscriptionsamedi 14 août 2004StatutMembreDernière intervention 5 avril 20123 18 déc. 2006 à 18:22
Bonsoir,
Une solution serait d'utiliser FindComponent pour lister tes StringGrid :
For i:=0 to Form1.ComponentCount-1 do
begin
if (Form1.Components[i] is TStringGrid) then
begin
TStringGrid(Form1.Components[i]).Cells[a,0] := ...
end ;
end;
Cordialement.
<hr />"L'imbécile prétentieux est celui qui se croit plus intelligent que ceux qui sont aussi bêtes que lui"/STRONG>
cs_Loda
Messages postés814Date d'inscriptionvendredi 3 novembre 2000StatutMembreDernière intervention30 juillet 20093 19 déc. 2006 à 09:31
salut,
si tu dois faire des acces frequent, une autre solution plus efficace qu'une recherche serrait d'avoir un tableau de TStringGrid.
genre
MesStringGrid : array[0..6] of TStringGrid;
et soit tu les crée dynamiquement (fait des recherch sur la création de composant dynamique),
soit tu init le tableau dans le form create (le plus simple pour toi je supose).
for i:=low(MesStringGrid ) to high(MesStringGrid ) do begin
MesStringGrid[i].Xxx
end;
en esperant t'avoir aider,
Loda
PS: au cas ou cela ne serrait pas clair pour toi, tu n'as pas besoin de detruire le tableau dans le form destroy.
<hr size="2" width="100%" />Se poser les bonnes questions est le premier pas pour trouver les bonnes réponses.