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 :

[wxWidget] Evènement et wxTextValidator


Sujet :

wxWidgets

Vue hybride

Message précédent Message précédent   Message suivant Message suivant
  1. #1
    Membre confirmé
    Profil pro
    Inscrit en
    Avril 2004
    Messages
    144
    Détails du profil
    Informations personnelles :
    Localisation : France

    Informations forums :
    Inscription : Avril 2004
    Messages : 144
    Par défaut [wxWidget] Evènement et wxTextValidator
    Bonjour,

    J'essaie d'implémenter un validateur "perso" dérivé de la classe wxTextValidator sur un wxTextCtrl.
    Le départ semble bon, l'appelle la fonction this->InitDialog (); remplie son rôle en exécutant automatiquement la fonction TransferToWindow de mes différents validateurs.
    Maintenant me voila au pied du mur concernant la gestion des évènements. Comment faire un appel automatique sur la fonction Validate de mes validateurs lorsqu'un évènement clavier à lieu sur les différents composants wxTextControl

    Existe t-il une fonction général a appeler ?!
    J'ai regardé du coté des évènements, j'arrive à intercépter un évènement mais le problème devient plus compliqué lorsque je dois appeler ma fonction Validate du validateur qui est ancré dans ce lui ci.
    J'ai aussi pensé à l'instancier en dehors du constructeur wxTextCtrl, mais il doit bien exister une méthode plus propre étant donné que les validateurs de base sont traités comme cela

    mon validateur :
    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
    #include <wx/valtext.h>
     
    class myTextValidator : public wxTextValidator
    {
    	private:
    		int min;
    		int max;
    		int *val;
     
    	public:
    		myTextValidator (int, int, int *);
    		myTextValidator (const myTextValidator &);
    		wxObject* Clone () const;
    		bool TransferFromWindow ();
    		bool TransferToWindow ();
    		bool Validate (wxWindow*);
    };
    Voici son implémentation dans l'application :
    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    1
    2
    3
    int test = 10;
    wxTextCtrl *textCtrl1 = new wxTextCtrl (this, ID_TEXT_OPERANDE_1, wxEmptyString, wxDefaultPosition, wxSize(30,-1), 0, myTextValidator(0, 20, &test));
    	boxSizer1->Add (textCtrl1);

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

    Informations forums :
    Inscription : Avril 2004
    Messages : 144
    Par défaut
    En fait j'ai trouvé,
    Il suffit d'appeler la fonction Validate et TansfertFromWindow générales qui se chargent d'appeler les fonctions enfants !
    merci quand même

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

Discussions similaires

  1. PB d'installation wxwidgets BCB6
    Par PsychicStorm dans le forum C++Builder
    Réponses: 3
    Dernier message: 18/05/2004, 16h02
  2. Réponses: 1
    Dernier message: 16/05/2004, 17h56
  3. wxWidgets - besoins d'aide...
    Par barbarello dans le forum wxWidgets
    Réponses: 2
    Dernier message: 07/05/2004, 09h33
  4. Evènement sur clic droit !?
    Par soccersoft dans le forum Composants VCL
    Réponses: 6
    Dernier message: 26/12/2002, 21h39

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