Débutant MFC : comment faire pour "enable/disable" des contrôles

Signaler
Messages postés
7
Date d'inscription
mercredi 9 janvier 2002
Statut
Membre
Dernière intervention
15 février 2002
-
Messages postés
132
Date d'inscription
mercredi 6 mars 2002
Statut
Membre
Dernière intervention
27 novembre 2012
-
Bonjour!

J'ai vu qu'en MFC certaines API ont une autre syntaxe et je n'arrive pas à trouver comment on peut activer/ désactiver un contrôle.

Avant je faisais :
EnableWindow(GetDlgItem(hDlg, Nom_du_controle), FALSE);

En MFC, cette même fonction est du type EnableWindow( BOOL ) et active/désactive la fenêtre entière... et moi je veux agir sur un contrôle uniquement.

Si vous pouvez m'aider ça serait super sympa!

Merci a+!

4 réponses

Messages postés
40
Date d'inscription
lundi 17 décembre 2001
Statut
Membre
Dernière intervention
25 février 2004

Sous MFC, la fonction EnableWindow est une méthode de la classe CWnd. Or c'est de cette classe qu'héritent tous les contrôles : CComboBox, CEdit ...
Donc, en toute logique, tu dois pouvoir faire :

monObjet.EnableWindow(TRUE/FALSE);
Messages postés
7
Date d'inscription
mercredi 9 janvier 2002
Statut
Membre
Dernière intervention
15 février 2002

-------------------------------
Réponse au message :
-------------------------------

Sous MFC, la fonction EnableWindow est une méthode de la classe CWnd. Or c'est de cette classe qu'héritent tous les contrôles : CComboBox, CEdit ...
Donc, en toute logique, tu dois pouvoir faire :

monObjet.EnableWindow(TRUE/FALSE);

-------------------------------
Réponse au message :
-------------------------------

Bonjour!

J'ai vu qu'en MFC certaines API ont une autre syntaxe et je n'arrive pas à trouver comment on peut activer/ désactiver un contrôle.

Avant je faisais :
EnableWindow(GetDlgItem(hDlg, Nom_du_controle), FALSE);

En MFC, cette même fonction est du type EnableWindow( BOOL ) et active/désactive la fenêtre entière... et moi je veux agir sur un contrôle uniquement.

Si vous pouvez m'aider ça serait super sympa!

Merci a+!
Messages postés
7
Date d'inscription
mercredi 9 janvier 2002
Statut
Membre
Dernière intervention
15 février 2002

Merci beaucoup jpeg! Je viens de découvrir qu'en plus on peut attribuer plusieurs varibles au même contrôle via Class Wizard... Donc je peux mettre à la fois une variable membre pour les données et une autre pour manipuler le contrôle...

Désolé d'embêter tout le monde mais c'est pas évident d'apprendre le MFC tout seul!

Merci encore!
Messages postés
132
Date d'inscription
mercredi 6 mars 2002
Statut
Membre
Dernière intervention
27 novembre 2012
1
Vu la date de la derniere post c'est surement trops tard, mais tu as aussi la possiblité de faire :

::EnableWindow(::GetDlgItem(m_hwnd,nom_du_control),true);

ca t'evite de créer des variables inutiles ....

MisterMok