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 :

TTabSheet.Create dynamique mais qu'en est il pour le free?


Sujet :

Delphi

  1. #1
    Membre confirmé
    Profil pro
    Inscrit en
    Mars 2002
    Messages
    213
    Détails du profil
    Informations personnelles :
    Localisation : Belgique

    Informations forums :
    Inscription : Mars 2002
    Messages : 213
    Par défaut TTabSheet.Create dynamique mais qu'en est il pour le free?
    Bonjour,

    dans mon programme, je créée de TTabSheet de manière dynamique ansi qu'un TChart et un TPieSeries.
    TTabSheet est parent du TChart qui est parent du TPieSeries.

    Lorsque j'analyse des fichiers, cela génère un nombre aléatoire de TTabSheet, ...

    Je voudrais que lorsque je relance la boucle, tous les composants créés soient "free", seulement voilà, les TTabSheet .create ne sont pas repris dans la liste des composants!
    Existe t'il une autre solution pour utiliser le "free"?

    Je vois bien la solution d'utiliser pagecount du pagecontrol parent, mais je me pose vraiment la question de pourquoi ils ne sont pas repris comme composants

    Voici mon code :
    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    1
    2
    3
    4
    5
    6
     
            SetLength(TabArray,ChartNumber+1);
            TabArray[ChartNumber] := TTabSheet.Create(PgPrice);
            TabArray[ChartNumber].PageControl := PgPrice;
            TabArray[ChartNumber].Name := 'TbArray'+IntToStr(ChartNumber);
            TabArray[ChartNumber].Caption := IntToStr(ChartNumber) + ' - ' + IntToStr(TabArray[ChartNumber].ComponentIndex) + ' - ' + TabArray[ChartNumber].Name;

  2. #2
    Membre Expert
    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
    Par défaut
    PArce que ce sont des Controls
    Normalement on doti les retrouver dans la liste des controls.

    Sinon , si tu cree tes TTabSheet avec le page control comme owner, a la liberation du page control, tous les tabsheet sont liberee, de meme que les composants qui sont dessus, si le tabsheet est le owner des compos qui lui sont cree dessus.

  3. #3
    Membre éprouvé
    Homme Profil pro
    Inscrit en
    Juin 2003
    Messages
    115
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Âge : 48
    Localisation : France, Haute Garonne (Midi Pyrénées)

    Informations forums :
    Inscription : Juin 2003
    Messages : 115
    Par défaut
    Essaye avec PgPrice.ControlCount et PgPrice.Controls[i]

  4. #4
    Membre confirmé
    Profil pro
    Inscrit en
    Mars 2002
    Messages
    213
    Détails du profil
    Informations personnelles :
    Localisation : Belgique

    Informations forums :
    Inscription : Mars 2002
    Messages : 213
    Par défaut
    Merci pour la rectification, je pensais que c'était un composant

    Je parcours le nombre de page dans mon page control et quand celle ci porte un nom spécifique, j'applique free.
    Ca fonctionnne nickel

+ Répondre à la discussion
Cette discussion est résolue.

Discussions similaires

  1. Réponses: 2
    Dernier message: 14/12/2006, 22h47
  2. Réponses: 4
    Dernier message: 11/11/2006, 19h50
  3. Réponses: 2
    Dernier message: 16/06/2006, 22h07
  4. [Dates] Date hier et aujourd'hui : mais si on est le 31 ?
    Par psychoBob dans le forum Langage
    Réponses: 4
    Dernier message: 10/06/2006, 16h44
  5. très bon debat sur les sgbd...mais qu'en est il alors?
    Par zax-tfh dans le forum Bases de données
    Réponses: 4
    Dernier message: 07/05/2004, 17h01

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