qd je ne le mets pas ca plante directement
pour mes 10 checkbox une idée ? qd j'en ai 9 ca passe 10 ca casse
qd je ne le mets pas ca plante directement
pour mes 10 checkbox une idée ? qd j'en ai 9 ca passe 10 ca casse
oui. ça ressemble à un dépassement de capacité du tableau.
tu fais bien
setLentgth( ???, MonTableau);
for i := 0 to length(monTableau) - 1 do
Begin
MonTableau[i]:= Tcheckbox.create
...
End;
comme indiqué précedemment, un tableau ou une liste vont de 0 à length -1
oui oui ca c'est bon, mon tableau n'a pas de taille prédéfinie donc ca le ferait avec n'importe quel nombre, ici de 0 à 9 ok mais plus ca veut pas
comment détermines tu le nombre de checkbox à créer?
et enlève le tag résolu. d'autres personnes s'interesseront à ton problème
de 0 a 9 ca fait bien 10 iterations ..... si tu va jusqu'a 10 ca fait 11 ... pour un tableau de 10 elements ca risque de coincer
les tableaux dynamiques vont de 0 a N-1 !!
Sinon explique plus en detail ton histoire de application.createform car moi je vois 2 declaration sur la meme variable .... et ca ca sent pas bon![]()
le query est limité par l'utilisateur qd je le mets entre 0 et 9 c'est bon
Code : Sélectionner tout - Visualiser dans une fenêtre à part
1
2 var chk:array of tcheckbox; SetLength(chk, form_do.querydo_dor.recordcount-1);
10 ce n'est plus bon pour la création des checkbox
étant donné le setlength je devrais avoir le problème tout le temps si j'avais un problème de taille de tableau
Code : Sélectionner tout - Visualiser dans une fenêtre à part
1
2
3
4
5
6
7
8
9
10
11
12
13 for i:=0 to form_Do.Querydo_dor.RecordCount-1 do begin chk[i] := Tcheckbox.Create(Self); chk[i].Parent := jvgroupbox1; chk[i].hint:=inttostr(form_do.querydo_dor.FieldByName('pk_dossier').asinteger); chk[i].Caption := form_do.querydo_dor.FieldByName('nom_dossier').asstring+' '+datetostr(form_do.querydo_dor.FieldByName('date_der_pr').asdatetime); chk[i].Left := 3; chk[i].Top:=j; chk[i].Width:=600; j:=j+20; form_do.Querydo_Dor.Next; end;
ca va je viens de voir
setlentgh(chk,query.recordcount -1) je dois pas avoir le -1 mais alors qd on declare un tableau setlength(chk,4);
y'a bien 4 éléments mais pourquoi il ne plantait pas avec 4 par exemple ?
il créait un tableau de 10 éléments qd meme ?
ET oui ... si tu creer un tableau de N-1 elements ... faut boucler de 0 a (N-1)-1 elements .... soit N-2Envoyé par Mihalis
Pour ce qui est du 10e elements .... je miserais plus sur un probleme de BdD plus que de creation a proprement parler.
Parce que au niveau creation dynamique . .tu peux en creer 200 si ca te chante![]()
Partager