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

MFC Discussion :

sous-classage CEdit Control


Sujet :

MFC

Vue hybride

Message pr�c�dent Message pr�c�dent   Message suivant Message suivant
  1. #1
    Membre averti
    Inscrit en
    Juin 2006
    Messages
    51
    D�tails du profil
    Informations forums :
    Inscription : Juin 2006
    Messages : 51
    Par d�faut sous-classage CEdit Control
    Bonjour,

    Ma question concerne le sous-classage "dynamique" de controle.

    Par ex :
    J'ai un CEdit dans une CDialog. Je veux (et ce n'est que pour illustrer ce que je veux r�aliser) emp�cher l'utilisateur de rentrer la lettre 'a' dans l'Edit Box.

    Pour ce faire, je d�rive une classe CMyEdit de CEdit, dans laquelle il n'existe que la fonction membre OnChar( ), qui se contente de faire un test sur le charactere entr�.

    Ensuite dans la fonction OnInitDialog( )de ma CDialog :
    Code : S�lectionner tout - Visualiser dans une fen�tre � part
    1
    2
    //IDC_EDIT1 est un CEdit généré par ClassWizard
    BOOL ret = m_MyEdit.SubclassDlgItem(IDC_EDIT1, this);
    Le pb : A aucun moment, le traitement des messages n'est rerout� vers ma fonction OnCHar( ). Pourtant, d'apres ce que j'ai lu sur la gestion des messages en MFC ce code devrait fonctionner.

    Une Id�e ??

    Fred

  2. #2
    R�dacteur
    Avatar de farscape
    Homme Profil pro
    D�veloppeur informatique
    Inscrit en
    Novembre 2003
    Messages
    9 055
    D�tails du profil
    Informations personnelles :
    Sexe : Homme
    Localisation : France, Alpes Maritimes (Provence Alpes C�te d'Azur)

    Informations professionnelles :
    Activit� : D�veloppeur informatique
    Secteur : High Tech - �diteur de logiciels

    Informations forums :
    Inscription : Novembre 2003
    Messages : 9 055
    Par d�faut
    salut,
    il y a plus simple ...
    tu attaches un contr�le edit a ta variable, et tu remplaces la classe CEdit par la classe CMyEdit.

    sinon ton subclass doit fonctionner � condition d'�tre plac� au bon endroit:
    OnInitDialog ou OnInitialUpdate.
    le fait de faire un subclass manuel plutot que l'op�ration d�crite en premier, te prive de l'utilisation de UpdateData...

  3. #3
    Membre averti
    Inscrit en
    Juin 2006
    Messages
    51
    D�tails du profil
    Informations forums :
    Inscription : Juin 2006
    Messages : 51
    Par d�faut
    Farscape,

    Aurais-tu quelques infos suppl�mentaires, je ne saisis pas ou je remplace la classe CEdit par CMyEdit.
    Et que signifie exactement "attacher" un contr�le Edit � ma variable ??
    Un CEdit membre de ma classe CMyEdit ??

  4. #4
    Membre averti
    Inscrit en
    Juin 2006
    Messages
    51
    D�tails du profil
    Informations forums :
    Inscription : Juin 2006
    Messages : 51
    Par d�faut
    ok autant pour moi ... c'est lundi matin ... je crois que je viens de saisir .. je test

  5. #5
    Membre averti
    Inscrit en
    Juin 2006
    Messages
    51
    D�tails du profil
    Informations forums :
    Inscription : Juin 2006
    Messages : 51
    Par d�faut
    Pas mieux en fait ...

    Je ne passe toujours pas par ma fonction OnChar( ).

    Via ClassWizard, j'ai attach� un control CEdit � mon Edit Box.
    Puis je change la d�claration de ce contr�le en CMyEdit m_MyEdit. Mais il s'en fout compl�tement ....

    comprends pas ....

  6. #6
    R�dacteur
    Avatar de farscape
    Homme Profil pro
    D�veloppeur informatique
    Inscrit en
    Novembre 2003
    Messages
    9 055
    D�tails du profil
    Informations personnelles :
    Sexe : Homme
    Localisation : France, Alpes Maritimes (Provence Alpes C�te d'Azur)

    Informations professionnelles :
    Activit� : D�veloppeur informatique
    Secteur : High Tech - �diteur de logiciels

    Informations forums :
    Inscription : Novembre 2003
    Messages : 9 055
    Par d�faut
    �a veut dire que ta classe n'est pas correcte notamment au niveau du message map...
    voir faq: http://c.developpez.com/faq/vc/?page...EditFilterChar

+ R�pondre � la discussion
Cette discussion est r�solue.

Discussions similaires

  1. ActiveX et sous-classage de la fenetre du conteneur
    Par LEK dans le forum Visual C++
    R�ponses: 0
    Dernier message: 06/12/2009, 16h49
  2. Cacher et afficher un CEdit Control
    Par A_B dans le forum MFC
    R�ponses: 5
    Dernier message: 06/01/2009, 21h14
  3. R�ponses: 2
    Dernier message: 13/10/2008, 15h02
  4. sous formulaire et controle
    Par mourly dans le forum VBA Access
    R�ponses: 5
    Dernier message: 04/03/2008, 14h51
  5. controle des ports sous Delphi
    Par jakjoud dans le forum API, COM et SDKs
    R�ponses: 2
    Dernier message: 10/07/2005, 19h16

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