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

C++Builder Discussion :

Probleme de constructeur


Sujet :

C++Builder

  1. #1
    Invité
    Invité(e)
    Par défaut Probleme de constructeur
    Bonjour

    j'ai une question sur les constructeurs

    J'ai une fiche avec un constructeur a 2 parametres
    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    1
    2
     
    __fastcall TF_MDIChildGrid::TF_MDIChildGrid(TComponent* Owner, char _Type) : TForm(Owner)
    lorsque je fais
    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    1
    2
     
    F_MDIChildGrid_articles = new TF_MDIChildGrid(this, 1);
    le debugueur m'indique que l'execution est sur l'entete de mon constructeur:
    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    1
    2
     
    __fastcall TF_MDIChildGrid::TF_MDIChildGrid(TComponent* Owner, char _Type) : TForm(Owner)
    puis sur:
    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    1
    2
     
    /* TCustomForm.Create */ inline __fastcall virtual TForm(Classes::TComponent* AOwner) : TCustomForm(AOwner) { }
    puis 2 fois de suite sur:
    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    1
    2
     
    /* TCustomForm.CreateNew */ inline __fastcall virtual TForm(Classes::TComponent* AOwner, int Dummy) : TCustomForm(AOwner, Dummy) { }
    puis sur
    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    1
    2
     
    void __fastcall TF_MDIChildGrid::FormActivate(TObject *Sender)
    Du coup le corps de mon constructeur n'est pas executé, ce qui est facheux.

    Quelqu'un aurait une idée ?

    Merci

  2. #2
    Membre Expert

    Profil pro
    Inscrit en
    Juin 2002
    Messages
    1 407
    Détails du profil
    Informations personnelles :
    Localisation : France

    Informations forums :
    Inscription : Juin 2002
    Messages : 1 407
    Par défaut
    Salut !

    Quelle est la classe de base : TForm ou TCustomForm ?
    Avec BCB 3 Pro je fais comme ça :


    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    1
    2
    3
    4
    5
    6
    7
    class TMaForm : public TCustomForm
    {
    public :
    //char c;
           __fastcall TMaForm(TComponent *Owner, char C);
           __fastcall ~TMaForm();
    };

    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    1
    2
    3
    4
    5
    __fastcall TMaForm::TMaForm(TComponent *Owner, char C)
        : TCustomForm(Owner, 0)
    {
    //char c = C;
    }
    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    1
    2
    3
    __fastcall TMaForm::~TMaForm()
    {
    }
    Usage qui ne pose aucun problème :

    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    1
    2
    3
    4
    5
    6
    7
    __fastcall TForm1::TForm1(TComponent* Owner)
        : TForm(Owner)
    {
    TMaForm *F = new TMaForm(Owner, 10);
    F->SetBounds(40,40,100,100);
    F->Show();
    }
    Ce serait intéressant de savoir si ce bout de code pose problème.

    A plus !

  3. #3
    Invité
    Invité(e)
    Par défaut
    J'ai testé le ton code henderson
    avec la classe qui descent de TCustomForm

    Ca marche sous BCB6 pas de probleme !

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

Discussions similaires

  1. Probleme avec constructeur surchargé
    Par dr971 dans le forum C++
    Réponses: 3
    Dernier message: 04/04/2007, 11h16
  2. Probleme de constructeur.
    Par Mickey.jet dans le forum Delphi
    Réponses: 4
    Dernier message: 31/05/2006, 19h42
  3. [JTable] probleme de constructeur et d'affichage
    Par hby dans le forum Composants
    Réponses: 3
    Dernier message: 01/05/2006, 16h43
  4. probleme de constructeur
    Par semaj_james dans le forum Langage
    Réponses: 4
    Dernier message: 08/02/2006, 15h48
  5. Réponses: 13
    Dernier message: 02/02/2005, 00h21

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