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

Autres éditeurs Discussion :

invalid static_cast from type `void


Sujet :

Autres éditeurs

  1. #1
    Membre du Club
    Profil pro
    Inscrit en
    Avril 2004
    Messages
    73
    Détails du profil
    Informations personnelles :
    Localisation : France

    Informations forums :
    Inscription : Avril 2004
    Messages : 73
    Points : 41
    Points
    41
    Par défaut [RESOLU] invalid static_cast from type `void
    Bonjour,

    Je me suis relancé dans wxwidgets sous CodeBlocks après pas réussi a utiliser de nouveau DEV-CPP.

    J'ai donc ressorti mes anciens code (basiques) et tenté de recompiler sous CodeBlocks.

    Certains fichiers CPP que je compilais sous DEV-CPP me genere une erreur sous CODEBLOCKS...

    Erreur du type :
    main.cpp:32: error: invalid static_cast from type `void (MainDialog::*)()' to type `void (wxEvtHandler::*)(wxCommandEvent&)'


    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    1
    2
    3
    4
    5
    6
    7
    8
    9
    10
    11
    12
    13
    14
    15
    16
    17
    18
    19
    20
    21
    22
    23
    24
    25
    26
    27
    28
    29
    30
    31
    32
    33
    34
    35
    36
    37
    38
    39
    40
    41
    42
    43
    class MainApp:public wxApp
    {
    public:
    virtual bool OnInit();
    };
    class MainDialog:public wxDialog
    {
    public:
    MainDialog(const wxString &title,const wxPoint &pos,const wxSize &size);
    wxButton *quitbouton;
    void OnQuit();
    DECLARE_EVENT_TABLE();
    };
    enum
    {
    ID_QUIT
    };
    BEGIN_EVENT_TABLE(MainDialog,wxDialog)
    EVT_BUTTON(ID_QUIT,MainDialog::OnQuit)
    EVT_CLOSE(MainDialog::OnQuit)
    END_EVENT_TABLE()
     
    IMPLEMENT_APP(MainApp)
     
    bool MainApp::OnInit()
    {
    MainDialog *diag=new MainDialog("Boite a dialogue",wxPoint(200,200),wxSize(450,350));
    diag->Show(true);
    SetTopWindow(diag);
    return true;
    }
     
    MainDialog::MainDialog(const wxString &title,const wxPoint &pos,const wxSize &size)
    :wxDialog((wxDialog *)NULL,-1,title,pos,size)
    {
    quitbouton=new wxButton(this,ID_QUIT,"Quitter",wxPoint(185,250),wxDefaultSize,0);
    }
     
    void MainDialog::OnQuit()
    {
    Close(true);
    this->Destroy();
    }
    Avez vous une idée de cette erreur que je retrouvais pas auparavant ?

  2. #2
    Membre du Club
    Profil pro
    Inscrit en
    Avril 2004
    Messages
    73
    Détails du profil
    Informations personnelles :
    Localisation : France

    Informations forums :
    Inscription : Avril 2004
    Messages : 73
    Points : 41
    Points
    41
    Par défaut
    J'ai trouvé une solution :

    dans ma declaration je met :

    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    void OnQuit(wxCommandEvent & Event);
    et

    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    void MainDialog::OnQuit(wxCommandEvent & Event);
    Plus d'erreur de compilation - Est ce du a CodeBlock car le code precedent se compilait sous DEV-CPP ou au changement de version WXWIdgets (2.4.2 vers 2.6.2) ??

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

Discussions similaires

  1. Réponses: 3
    Dernier message: 07/07/2014, 12h02
  2. Réponses: 2
    Dernier message: 02/05/2011, 09h24
  3. Réponses: 4
    Dernier message: 25/02/2010, 17h14
  4. Réponses: 2
    Dernier message: 24/12/2005, 11h37
  5. type void* dans une structure
    Par barbapapaz dans le forum C
    Réponses: 3
    Dernier message: 16/07/2004, 16h11

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