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 :

EventTable dans des headers séparés


Sujet :

wxWidgets

  1. #1
    Membre à l'essai
    Inscrit en
    Février 2008
    Messages
    20
    Détails du profil
    Informations forums :
    Inscription : Février 2008
    Messages : 20
    Points : 17
    Points
    17
    Par défaut EventTable dans des headers séparés
    Bonjour,
    J'ai développé un objet appelé MapCanvas dans un code indépendant (2dunit.h et 2dunit.cpp) qui dispose de ses propres controles (et donc de sa propre TableEvent).
    Il tourne nickel.

    Maintenant, j'essaye d'intégrer cet objet dans mon code principal. Je vire la frame, et l'app. Je rajoute le header et le code de l'objet, je met #include "2dunit.h" dans le header du programme principal.
    Au final, je me récupère plein d'erreur de link du style :

    Erreur 4 error LNK2005: "protected: static struct wxEventTable const MapWindow::sm_eventTable" (?sm_eventTable@MapWindow@@1UwxEventTable@@B) déjà défini(e) dans interface.obj 2dunit.obj
    Erreur 11 error LNK2005: "protected: virtual struct wxEventTable const * __thiscall MapCanvas::GetEventTable(void)const " (?GetEventTable@MapCanvas@@MBEPBUwxEventTable@@XZ) déjà défini(e) dans interface.obj 2dunit.obj

    Quel serait la bonne méthode à appliquer ?

  2. #2
    Membre à l'essai
    Inscrit en
    Février 2008
    Messages
    20
    Détails du profil
    Informations forums :
    Inscription : Février 2008
    Messages : 20
    Points : 17
    Points
    17
    Par défaut résolu
    bon j'ai trouvé le problème :
    http://wiki.wxwidgets.org/Events
    An event table such as the one below tells wxWidgets how to map events to member functions. An event table is defined in the implementation file (.cpp).

    donc contrairement à certains samples, il faut mettre la table dans le cpp

  3. #3
    Membre émérite
    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 : 45
    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
    Points : 2 568
    Points
    2 568
    Par défaut
    Sinon au lieu d'utiliser des macros, tu peux utiliser la fonction "Connect"

    Le gros avantage étant de pouvoir faire Connect/Disconnect, et pas de question à se poser sur les macros ! (On peut aussi mixer les 2)

    L'autre avantage est de pouvoir se connecter sur un event depuis l'extérieur d'un composant.

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

Discussions similaires

  1. Réponses: 7
    Dernier message: 30/06/2011, 16h16
  2. plein d'erreurs supposément dans des headers de MinGW
    Par ManusDei dans le forum Langage
    Réponses: 6
    Dernier message: 28/04/2011, 16h10
  3. handleur() et signal() dans des fichiers séparés
    Par loopiote dans le forum POSIX
    Réponses: 3
    Dernier message: 28/02/2010, 00h32
  4. Déclarer une classe dans des fichiers séparés
    Par Heriquet dans le forum Langage
    Réponses: 2
    Dernier message: 20/01/2010, 11h17
  5. Réponses: 2
    Dernier message: 12/04/2006, 21h48

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