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

Langage Delphi Discussion :

Probleme de destruction


Sujet :

Langage Delphi

  1. #1
    Candidat au Club
    Inscrit en
    Juin 2003
    Messages
    7
    Détails du profil
    Informations forums :
    Inscription : Juin 2003
    Messages : 7
    Points : 4
    Points
    4
    Par défaut Probleme de destruction
    Bonjour,

    Je suis novice dans la programation sous delphi et j'ai un probleme pour la destruction d'une Image cree dynamiquement et appartenant a un Panel

    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    1
    2
    3
    ImageCode2D:=TImage.Create(Form1);
    ImageCode2D.Parent := Form1.Panel2;
    Form1.Panel2.InsertComponent(ImageCode2D);
    Lorsquer je rajoute ma derniere ligne (le insertComponent) et que je souhaite quitter mon application, il me balance un Access Violation a l'adresse 00000000. Quelqu'un aurait il une idée de l'origine de mon probleme?

    [Balise [code] rajoutée par hachesse]
    [Pensez-y vous-même à l'avenir. Merci.]

  2. #2
    Candidat au Club
    Inscrit en
    Juin 2003
    Messages
    7
    Détails du profil
    Informations forums :
    Inscription : Juin 2003
    Messages : 7
    Points : 4
    Points
    4
    Par défaut
    j'ai essaye Form1.Panel2.Components[i].Free
    J'ai essaye egalement Form1.Panel2.RemoveComponent Form1.Panel2.Components[i])

    Dans les 2 cas, on a une destruction car ComponentCount est decremente.
    Mais ca merde toujours lorsque je quitte ou que je passe trop de fois sur cette instruction

  3. #3
    Nouveau membre du Club
    Inscrit en
    Mars 2003
    Messages
    20
    Détails du profil
    Informations forums :
    Inscription : Mars 2003
    Messages : 20
    Points : 25
    Points
    25
    Par défaut
    Salut,

    Pourquoi n'écris-tu pas plutôt :

    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    1
    2
     
    ImageCode2D:=TImage.Create(Form1.Panel2);
    Le paramètre de TImage.Create( AOwner : TComponent) est le proriétaire de TImage ( AOwner <> Parent ), c'est à dire celui qui responsable de la destruction de TImage.

    Tu n'as pas besoin d'appeler InsertComponent, normalement la méthode Create fait un appel à AOwner.InsertComponent.

  4. #4
    Candidat au Club
    Inscrit en
    Juin 2003
    Messages
    7
    Détails du profil
    Informations forums :
    Inscription : Juin 2003
    Messages : 7
    Points : 4
    Points
    4
    Par défaut
    Le probleme quand je fais ca c'est que je ne vois plus apparaitre mon image cree sur le Panel. En revanche du fait que j'ai enleve InsertComponent ca ne plante plus

  5. #5
    Membre du Club
    Profil pro
    Inscrit en
    Mars 2003
    Messages
    75
    Détails du profil
    Informations personnelles :
    Localisation : France

    Informations forums :
    Inscription : Mars 2003
    Messages : 75
    Points : 61
    Points
    61
    Par défaut
    après cette ligne tu mets
    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    ImageCode2D.Parent := Form1.Panel2;
    et là tu devrais la voir.

  6. #6
    Candidat au Club
    Inscrit en
    Juin 2003
    Messages
    7
    Détails du profil
    Informations forums :
    Inscription : Juin 2003
    Messages : 7
    Points : 4
    Points
    4
    Par défaut
    Oui merci ca a l'air de marcher!

  7. #7
    Membre éclairé
    Avatar de MD Software
    Profil pro
    Inscrit en
    Juin 2003
    Messages
    613
    Détails du profil
    Informations personnelles :
    Localisation : France

    Informations forums :
    Inscription : Juin 2003
    Messages : 613
    Points : 680
    Points
    680
    Par défaut
    Pense au tag [RESOLU]

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

Discussions similaires

  1. probleme de destruction des control d'un radiogroup
    Par moustaf_26 dans le forum Composants VCL
    Réponses: 4
    Dernier message: 04/11/2011, 14h44
  2. Probleme de destruction d'une fenêtre SDL 1.3
    Par bubkadk dans le forum SDL
    Réponses: 2
    Dernier message: 26/07/2011, 12h13
  3. probleme de destruction de pointeur
    Par Dom_the_quaker dans le forum C++
    Réponses: 6
    Dernier message: 09/06/2008, 17h05
  4. Probleme de destruction ShellTreeView
    Par patachat dans le forum Delphi
    Réponses: 1
    Dernier message: 07/03/2007, 22h12
  5. Réponses: 2
    Dernier message: 06/09/2006, 22h04

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