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 :

probléme de compilation


Sujet :

wxWidgets

Vue hybride

Message précédent Message précédent   Message suivant Message suivant
  1. #1
    Membre confirmé
    Inscrit en
    Juin 2010
    Messages
    151
    Détails du profil
    Informations forums :
    Inscription : Juin 2010
    Messages : 151
    Par défaut probléme de compilation
    salut j'ai écrit un premier programme en utlisant wxwidget et il y a une erreur que je ne comprend pas du tout voici l'erreur:
    error C2664: 'wxFileSelector'*: impossible de convertir le paramètre 1 de 'const char [7]' en 'const wxChar *'
    1> Les types pointés n'ont aucun rapport entre eux*; conversion nécessitant reinterpret_cast, cast de style C ou cast de style fonction


    voici le code que j'ai écrit:
    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
    44
    45
    46
    47
    48
    49
    50
    51
    52
    53
    54
    55
    56
    57
    58
    59
    60
    61
    62
    63
    64
    65
    66
    67
    68
    69
    70
    71
    72
    73
    74
    75
    76
    77
    78
    79
    80
    81
    82
    83
    84
    85
    86
    87
    88
    89
    90
    91
    92
    93
    94
    #include "wx/wx.h"
     
    	// Classe application :
    	class MyApp : public wxApp
    	{
    	public:
    	   // Méthode virtuelle de démarrage de l'application :
    	    virtual bool OnInit();
    	};
     
    	// Notre fenêtre minimale :
    	class MyFrame : public wxFrame
    	{
    	public:
    	    // Constructeur :
    	    MyFrame(const wxString& title);
    	    bool TextChg;
            wxTextCtrl *mlTextCtrl;
    	    // 2 handler d'évènements
    	    void OnQuit(wxCommandEvent& event);
    	    void Onouvre(wxCommandEvent& event);
     
    	private:
    	    // la table des évènements
    	    DECLARE_EVENT_TABLE()
    	};
     
    	IMPLEMENT_APP(MyApp)
     
     
    	// Notre 'main' :
    	bool MyApp::OnInit()
    	{
    	    if ( !wxApp::OnInit() )
    	        return false;
     
    	    MyFrame *frame = new MyFrame(_T("Minimal wxWidgets App"));
    	    frame->Show(true);
     
    	    return true;
    	}
     
    	// IDs pour nos menus et contrôles :
    	enum
    	{
    	    Minimal_Quit = wxID_EXIT,
    	    Minimal_ouvre 
    	};
     
    	// La table des évènements de notre fenêtre :
    	BEGIN_EVENT_TABLE(MyFrame, wxFrame)
    	    EVT_MENU(Minimal_Quit,  MyFrame::OnQuit)
    	    EVT_MENU(Minimal_ouvre, MyFrame::Onouvre)
    	END_EVENT_TABLE()
     
     
    	// Le constructeur de notre classe de fenêtre :
    	MyFrame::MyFrame(const wxString& title)
    	       : wxFrame(NULL, wxID_ANY, title)
    	{
    	    // Ajoutons nos menus :
    	    wxMenu *fileMenu = new wxMenu;
    	    fileMenu->Append(Minimal_Quit, _T("&Quitter\tAlt-Q"), _T("Sortir du programme"));
    	    wxMenu *file2Menu = new wxMenu;
    	    file2Menu->Append(Minimal_ouvre, _T("&ouvrir"), _T("ouvrir"));
    	    // dans une barre de menu :
    	    wxMenuBar *menuBar = new wxMenuBar();
    	    menuBar->Append(fileMenu, _T("&Fichier"));
    	    menuBar->Append(file2Menu, _T("&ouvrir"));
    	    SetMenuBar(menuBar);
     
    	    // Une barre de statut :
    	    CreateStatusBar(2);
    	    SetStatusText(_T("Bienvenu sur notre premier projet wxWidgets avec MinGW !"));
    	}
     
     
    	// La gestion des évènements :
     
    	void MyFrame::OnQuit(wxCommandEvent& WXUNUSED(event))
    	{
    	    Close(true);
    	}
     
    	void MyFrame::Onouvre(wxCommandEvent& WXUNUSED(event))
    	{
    	  wxString nomfichier = wxFileSelector("Ouvrir" ,"" ,"" ,"",
              "cpp files (*.cpp;*.h)|*.h;*.cpp|resources files (*.rc)|*.rc",wxOPEN);
         if (!nomfichier.empty())
           {
            mlTextCtrl->LoadFile(nomfichier);
            TextChg = false;
           } 
    	}
    alors des idées??

  2. #2
    Responsable 2D/3D/Jeux


    Avatar de LittleWhite
    Homme Profil pro
    Ingénieur développement logiciels
    Inscrit en
    Mai 2008
    Messages
    27 156
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Localisation : France

    Informations professionnelles :
    Activité : Ingénieur développement logiciels

    Informations forums :
    Inscription : Mai 2008
    Messages : 27 156
    Billets dans le blog
    151
    Par défaut
    Bonjour,

    Je ne suis pas sur, mais dans votre code il y a une incohérence.
    Pour toute les chaines de caractères, vous les entourer de _T() , mais pour celle ou il y a l'erreur vous ne le faite pas. Donc je suis tenté de dire, faite le et voyez si cela compile.
    Vous souhaitez participer à la rubrique 2D/3D/Jeux ? Contactez-moi

    Ma page sur DVP
    Mon Portfolio

    Qui connaît l'erreur, connaît la solution.

  3. #3
    Membre confirmé
    Inscrit en
    Juin 2010
    Messages
    151
    Détails du profil
    Informations forums :
    Inscription : Juin 2010
    Messages : 151
    Par défaut
    Citation Envoyé par LittleWhite Voir le message
    Bonjour,

    Je ne suis pas sur, mais dans votre code il y a une incohérence.
    Pour toute les chaines de caractères, vous les entourer de _T() , mais pour celle ou il y a l'erreur vous ne le faite pas. Donc je suis tenté de dire, faite le et voyez si cela compile.
    salut,
    oui j'ai ajouté _T et l'erreur a disparu sauf que lors de l'exécution la fonction ouvrir qui est une boite de dialogue d'ouverture de fichier ne m'ouvre pas le fichier.elle permet de séléctionner un fichier et aprés la séléction l'éxcution s'arréte je me demande est ce qu'une boite de dialogue permet l'affichege du fichier séléctionné ou la séléction du fichier seulement ?

  4. #4
    Membre chevronné Avatar de wxXav
    Homme Profil pro
    Développeur amateur
    Inscrit en
    Décembre 2008
    Messages
    214
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Localisation : France

    Informations professionnelles :
    Activité : Développeur amateur

    Informations forums :
    Inscription : Décembre 2008
    Messages : 214
    Par défaut
    Salut

    Comme son nom l'indique, wxFileSelector permet de sélectionner un ou plusieurs fichier(s), à partir d'un emplacement, et/ou d'un filtre sur les noms de fichiers.
    Cela permet de récupérer les noms des fichiers à charger, afin que l'application puisse en faire ce qu'elle veut.
    Mais en aucun cas, cette classe ne charge le ou les fichier(s) sélectionné(s).

    D'ailleurs, ce n'est pas parce que tu utilises un wxFileSelector que tu veux charger le fichier. Cela peut être pour plein d'autres raisons :
    • Pour les supprimer
    • Pour les référencer dans une base de données, ou un index quelconque
    • Pour les renommer
    • ...


    @+
    Xav'

  5. #5
    Membre confirmé
    Inscrit en
    Juin 2010
    Messages
    151
    Détails du profil
    Informations forums :
    Inscription : Juin 2010
    Messages : 151
    Par défaut
    Citation Envoyé par wxXav Voir le message
    Salut

    Comme son nom l'indique, wxFileSelector permet de sélectionner un ou plusieurs fichier(s), à partir d'un emplacement, et/ou d'un filtre sur les noms de fichiers.
    Cela permet de récupérer les noms des fichiers à charger, afin que l'application puisse en faire ce qu'elle veut.
    Mais en aucun cas, cette classe ne charge le ou les fichier(s) sélectionné(s).

    D'ailleurs, ce n'est pas parce que tu utilises un wxFileSelector que tu veux charger le fichier. Cela peut être pour plein d'autres raisons :
    • Pour les supprimer
    • Pour les référencer dans une base de données, ou un index quelconque
    • Pour les renommer
    • ...


    @+
    Xav'
    donc si j'ai bien compris je doit ajouter quelque chose à ma méthode onouvre pour qu'elle puisse afficher le fichier?

Discussions similaires

  1. problème de compilation sous visual C++
    Par fabmili dans le forum MFC
    Réponses: 4
    Dernier message: 08/02/2004, 19h52
  2. problème de compil devc++ socket
    Par stefdem dans le forum Autres éditeurs
    Réponses: 2
    Dernier message: 11/12/2003, 11h33
  3. Réponses: 1
    Dernier message: 29/10/2003, 12h16
  4. Problème de compilation de la DLL du XMLRad
    Par [DreaMs] dans le forum XMLRAD
    Réponses: 2
    Dernier message: 16/04/2003, 16h46
  5. Réponses: 1
    Dernier message: 27/05/2002, 01h44

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