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

wxWidgets Discussion :

Déclaration à commenter dans XxxMain.h ?


Sujet :

wxWidgets

Vue hybride

Message précédent Message précédent   Message suivant Message suivant
  1. #1
    Membre chevronné Avatar de mess-mate
    Inscrit en
    Septembre 2008
    Messages
    352
    Détails du profil
    Informations forums :
    Inscription : Septembre 2008
    Messages : 352
    Par défaut Déclaration à commenter dans XxxMain.h ?
    Bonjour,
    il y a quelque chose que je comprends vraiment pas:
    (sous C::B et wxSmith)

    Je crée un wxTextCtrl que je nomme disons gError
    Une déclaration est automatiquement dans XxMain.h en tant que wxTextCtrl* gError;

    Dans une fonction le mets '*gError << wxT("Hello, World!")<<wxT("\n");' sans autre déclaration.

    Et pour que cela fonctionne je suis obligé de commenter dans XxMain.h la déclaration 'wxTextCtrl* gError;'

  2. #2
    Membre Expert
    Avatar de Ti-R
    Homme Profil pro
    Ingénieur R&D
    Inscrit en
    Avril 2003
    Messages
    1 683
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Âge : 46
    Localisation : France, Hauts de Seine (Île de France)

    Informations professionnelles :
    Activité : Ingénieur R&D
    Secteur : High Tech - Éditeur de logiciels

    Informations forums :
    Inscription : Avril 2003
    Messages : 1 683
    Par défaut
    Une déclaration autre de gError doit être présent dans le code:

    Exemple:
    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    static wxTextCtrl* gError;

  3. #3
    Membre chevronné Avatar de mess-mate
    Inscrit en
    Septembre 2008
    Messages
    352
    Détails du profil
    Informations forums :
    Inscription : Septembre 2008
    Messages : 352
    Par défaut
    Justement.... non. Il faut pas.
    Regarde:
    FilDat2Main.h
    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    1
    2
    3
    4
    5
    6
    7
           //(*Declarations(FilDat2Frame)
            wxButton* Button1;
            wxStaticText* StaticText1;
            wxButton* Button2;
            wxStatusBar* StatusBar1;
    //        wxTextCtrl* gError;  // cette déclaration est commenté !
            //*)
    Et FilDat2Main.cpp
    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    1
    2
    3
        gError = new wxTextCtrl(this, ID_GERROR, wxEmptyString, wxDefaultPosition, wxSize(543,151), wxTE_MULTILINE|wxTE_READONLY, wxDefaultValidator, _T("ID_GERROR"));
        gError->SetBackgroundColour(wxColour(250,152,19));
        FlexGridSizer1->Add(gError, 1, wxALL|wxALIGN_CENTER_HORIZONTAL|wxALIGN_CENTER_VERTICAL, 5);
    et dans makedata.cpp
    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    1
    2
    3
    4
    5
    6
    //static wxTextCtrl *gError=0;  // et ici aussi commenté !
    
    void makedata()
    {
    
    *gError << wxT("Hello, World!")<<wxT("\n");
    et ça marche impeccablement.

    J'ai tout simplement dans C::B avec wxWidgets crée un wxTextCtrl que j'ai nommé gError. Les fichiers adéquat ont été crée par C::B.
    Ensuite pour que ça marche j'ai dû commenter // wxTextCtrl* gError; ainsi que la //static wxTextCtrl *gError=0;.

    C'est normal ça ?

  4. #4
    Membre Expert
    Avatar de Ti-R
    Homme Profil pro
    Ingénieur R&D
    Inscrit en
    Avril 2003
    Messages
    1 683
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Âge : 46
    Localisation : France, Hauts de Seine (Île de France)

    Informations professionnelles :
    Activité : Ingénieur R&D
    Secteur : High Tech - Éditeur de logiciels

    Informations forums :
    Inscription : Avril 2003
    Messages : 1 683
    Par défaut
    Si si c'est obligatoire en C++
    Il faut déclarer le type.

    Il suffit de chercher gError dans tout le source code, je suis sur qu'il y a soit un
    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    static wxTextCtrl* gError;
    dans une classe

    Soit un

    dans un .h en dehors d'une classe

  5. #5
    Membre chevronné Avatar de mess-mate
    Inscrit en
    Septembre 2008
    Messages
    352
    Détails du profil
    Informations forums :
    Inscription : Septembre 2008
    Messages : 352
    Par défaut
    J'ai remplacé gError par logError, et rien ne change.
    La ligne de code dans la .h DOIT être commenté pour que cela marche.
    La ligne de code dans makedata.cpp
    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    static wxTextCtrl* logError;
    en la commentant n'a aucune incidence. Si elle est là ou pas, ça continu à marcher comme il se doit.

    Tout ce que j'ai trouvé en ce qui concerne logError, c'est ceci dans la .h :
    Code : Sélectionner tout - Visualiser dans une fenêtre à part
     static const long ID_LOGERROR;
    qui pourrait aussi bien être remplacé par un -1 et qui ne revient que dans
    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    logError = new wxTextCtrl(this, ID_LOGERROR, wxEmptyString, wxDefaultPosition, wxSize(543,151), wxTE_MULTILINE|wxTE_READONLY, wxDefaultValidator, _T("ID_LOGERROR"));
    2ème test :

    Je remplace la logError par la TextCtrl1 (qui est crée par default lors de la mise ne place d'une wxTextCtrl) et je reviens toujours à la même chose:
    - doit être commenté dans la .h
    - une déclaration ou pas dans makedata.cpp ne fait aucune différence.

  6. #6
    Membre Expert
    Avatar de Ti-R
    Homme Profil pro
    Ingénieur R&D
    Inscrit en
    Avril 2003
    Messages
    1 683
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Âge : 46
    Localisation : France, Hauts de Seine (Île de France)

    Informations professionnelles :
    Activité : Ingénieur R&D
    Secteur : High Tech - Éditeur de logiciels

    Informations forums :
    Inscription : Avril 2003
    Messages : 1 683
    Par défaut
    C'est possible de partager vos sources ?

    Car je ne comprends pas comment une variable peut être utilisée sans être déclarée.

Discussions similaires

  1. Réponses: 4
    Dernier message: 14/11/2007, 15h55
  2. Déclaration jsp dans web.xml
    Par bit_o dans le forum Servlets/JSP
    Réponses: 4
    Dernier message: 18/10/2007, 17h55
  3. Problème déclaration variable dans "if"
    Par doremib dans le forum Scripts/Batch
    Réponses: 3
    Dernier message: 17/07/2007, 12h42
  4. [VBA]Comment, dans le code VBA, hasher un mot de passe ?
    Par lord abortion dans le forum VBA Access
    Réponses: 6
    Dernier message: 18/04/2007, 16h41
  5. Comment utiliser 'COMMENT' dans SQL*PLUS
    Par soumia1988 dans le forum Oracle
    Réponses: 5
    Dernier message: 20/03/2007, 13h27

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