IdentifiantMot de passe
Loading...
Mot de passe oublié ?Je m'inscris ! (gratuit)
Navigation

Inscrivez-vous gratuitement
pour pouvoir participer, suivre les réponses en temps réel, voter pour les messages, poser vos propres questions et recevoir la newsletter

Delphi Discussion :

créer composant dynamiquement avec sa déclaration


Sujet :

Delphi

  1. #21
    Membre habitué
    Inscrit en
    Avril 2003
    Messages
    316
    Détails du profil
    Informations forums :
    Inscription : Avril 2003
    Messages : 316
    Points : 158
    Points
    158
    Par défaut
    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

  2. #22
    bjl
    bjl est déconnecté
    Membre averti Avatar de bjl
    Profil pro
    Inscrit en
    Décembre 2002
    Messages
    263
    Détails du profil
    Informations personnelles :
    Localisation : Brésil

    Informations forums :
    Inscription : Décembre 2002
    Messages : 263
    Points : 338
    Points
    338
    Par défaut
    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

  3. #23
    Membre habitué
    Inscrit en
    Avril 2003
    Messages
    316
    Détails du profil
    Informations forums :
    Inscription : Avril 2003
    Messages : 316
    Points : 158
    Points
    158
    Par défaut
    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

  4. #24
    bjl
    bjl est déconnecté
    Membre averti Avatar de bjl
    Profil pro
    Inscrit en
    Décembre 2002
    Messages
    263
    Détails du profil
    Informations personnelles :
    Localisation : Brésil

    Informations forums :
    Inscription : Décembre 2002
    Messages : 263
    Points : 338
    Points
    338
    Par défaut
    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

  5. #25
    Membre chevronné
    Avatar de Clorish
    Profil pro
    Inscrit en
    Juin 2003
    Messages
    2 474
    Détails du profil
    Informations personnelles :
    Localisation : France

    Informations forums :
    Inscription : Juin 2003
    Messages : 2 474
    Points : 2 158
    Points
    2 158
    Par défaut
    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

  6. #26
    Membre habitué
    Inscrit en
    Avril 2003
    Messages
    316
    Détails du profil
    Informations forums :
    Inscription : Avril 2003
    Messages : 316
    Points : 158
    Points
    158
    Par défaut
    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);
    le query est limité par l'utilisateur qd je le mets entre 0 et 9 c'est bon
    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;

  7. #27
    Membre habitué
    Inscrit en
    Avril 2003
    Messages
    316
    Détails du profil
    Informations forums :
    Inscription : Avril 2003
    Messages : 316
    Points : 158
    Points
    158
    Par défaut
    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 ?

  8. #28
    Membre chevronné
    Avatar de Clorish
    Profil pro
    Inscrit en
    Juin 2003
    Messages
    2 474
    Détails du profil
    Informations personnelles :
    Localisation : France

    Informations forums :
    Inscription : Juin 2003
    Messages : 2 474
    Points : 2 158
    Points
    2 158
    Par défaut
    Citation Envoyé par Mihalis
    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-2

    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

+ Répondre à la discussion
Cette discussion est résolue.
Page 2 sur 2 PremièrePremière 12

Discussions similaires

  1. Réponses: 1
    Dernier message: 26/04/2013, 10h47
  2. Comment créer un site immobilier dynamique avec une base de données ?
    Par Alain troverti dans le forum Général Conception Web
    Réponses: 14
    Dernier message: 07/07/2006, 22h57
  3. Réponses: 1
    Dernier message: 04/05/2005, 12h43
  4. [DisplayTag] Créer un lien dynamique avec javascript
    Par babylone7 dans le forum Taglibs
    Réponses: 3
    Dernier message: 20/04/2005, 11h23
  5. Créer composant avec TQuery->pb suppression a la concepti
    Par marghett dans le forum Bases de données
    Réponses: 12
    Dernier message: 24/07/2004, 08h42

Partager

Partager
  • Envoyer la discussion sur Viadeo
  • Envoyer la discussion sur Twitter
  • Envoyer la discussion sur Google
  • Envoyer la discussion sur Facebook
  • Envoyer la discussion sur Digg
  • Envoyer la discussion sur Delicious
  • Envoyer la discussion sur MySpace
  • Envoyer la discussion sur Yahoo