voilà, j'ai enfin trouvé un petit moment ce soir pour me lancer dans le dév de GUI en C/C++ avec wxWidgets, je trouve ça vraiment super sympa à utiliser et très simple (jusque là )
En revanche j'ai un petit problème, j'aurais voulu éxécuter un traitement lorsque le contenu d'un wxTextCtrl de mon appli est modifié... Je suis allé voir sur le site de wxWidgets, j'ai trouvé un événement EVT_TEXT qui correspond... Mais apparemment cet événement n'est pas "catché", rien ne se passe lorsque je modifie le contenu du wxTextCtrl... :():
Je l'ai bien ajouté dans ma table d'événements, avec l'id et la fonction associée... j'ai bien déclaré ma table d'événements (par exemple les menus fonctionnent très bien)...
Voilà si vous aviez des pistes pour m'aider ce serait super,
Merci d'avance,
Salut,
Il me faudrait le code du constructeur également s'il te plait :)
Au fait : t'as bien une statusbar ? car setstatustext sans statusbar, ca marche?
__________________________
Be C++ Mon Blog (C++, Intelligence Artificielle, Prolog)
En effet setstatustext c'est bien une action qui s'effectue sur une statusbar, eh oui oui j'ai bien une statusbar...!!
D'ailleurs j'avais essayé le setstatustext dans mon constructeur pour voir si ça ne venait pas simplement de l'utilisation d'une mauvaise syntaxe pour cette méthode mais non.... :():
Sinon voici le code du constructeur :
MyFrame::MyFrame (const wxString& title, const wxPoint& point, const wxSize& size)
:wxFrame( (wxFrame *) NULL, -1, title, point, size) {
/* "Sécurité" pointeurs */
MyText = (wxTextCtrl*) NULL;
MyMenuBar = (wxMenuBar*) NULL;
MyFileMenu = (wxMenu*) NULL;
// On instancie un nouveau contrôle texte
MyText = new wxTextCtrl (this, -1, "", wxDefaultPosition, wxDefaultSize, wxTE_MULTILINE);
// On créé un nouveau menu
MyFileMenu = new wxMenu;
MyFileMenu->Append(ID_Open, "&Ouvrir");
MyFileMenu->Append(ID_Save, "&Sauvegarder");
MyFileMenu->AppendSeparator();
MyFileMenu->Append(ID_Quit, "&Quitter");
// On crée une nouvelle barre de menu a laquelle on ajoute le menu créé précédemment
MyMenuBar = new wxMenuBar;
MyMenuBar->Append(MyFileMenu, "&Fichier");
// On associe la barre de menu a l'application
SetMenuBar(MyMenuBar);
// On crée une barre d'état comportant un seul volet
CreateStatusBar(1);
}
Ah!
C'est bien ce qui me semblait ...
Comment penses-tu que wxwidgets gère les différents composants? Par des ID oui ...
or précisemment à la ligne :
MyText = new wxTextCtrl (this, -1, "", wxDefaultPosition, wxDefaultSize, wxTE_MULTILINE);
tu mets -1 pour l'ID au lieu de ID_Edit
donc On_Edit n'est jamais appelée puisque ID_Edit n'est associé à aucun composant.
Donc je te suggère de remplacer la ligne que j'ai mise ci dessus par :
MyText = new wxTextCtrl (this, ID_Edit, "", wxDefaultPosition, wxDefaultSize, wxTE_MULTILINE);
Hum ouuuuui ! ce que tu viens de m'expliquer semble tout à fait logique... je vais tester ça et je te tiens au courant !!!
__________________________ Club de Tennis de Table de Chauffailles
Re bonsoir ^^
Hé bien j'suis content que cela marche maintenant.
J'essaye d'aider le plus que je peux, je vole de sujet en sujet pour aider les gens, armé de mon clavier, et compagnie, etc ...
Une fois que tu as compris le principe, les GUI et notemment wxWidgets devient facile ...
Bon courage,
En espérant avoir de tes nouvelles dans ce forum
__________________________
Be C++ Mon Blog (C++, Intelligence Artificielle, Prolog)