FX
-
16 déc. 2001 à 11:49
Grolu
Messages postés6Date d'inscriptionvendredi 18 janvier 2002StatutMembreDernière intervention 1 avril 2002
-
18 janv. 2002 à 10:20
Salut, je suis un debutant en C++, et je voudrais savoir, avec les MFC comment changer la valeur d'un label box ...
Quand je double clique sur le bouton il me demande le un nom, bon je laisse celui donner par default, puis je tombe sur le code, et quand je clique sur ce bouton, je voudrais que par exemple, se qui a ecris dans le label IDC_LABEL se changer en "Ok ca marche".
header
Messages postés19Date d'inscriptionlundi 9 octobre 2000StatutMembreDernière intervention23 juin 2002 29 déc. 2001 à 20:17
C 'est tres tres simple...
Une fois que tu as mis ton label sur l'interface de ton appli tu fais un bouton droit et tu CHANGES le nom au lieu de IDC_STATIC ( la valeur par defaut) tu mets par ex IDC_ESSAI. Ensuite tu vas dans class wizard en faisant un bouto droit sur ton label. Dans class wizard tu vas dans add member variable. normalement tu dois voir le nom de ton label (IDC_ESSAI) etre inscrit dans la fenetre. Tu dbl clike dessus la tu ajoutes une variable du type CString par ex m_essai. Voila le plus gros et fait
Ensuite tu cree par ex un bouton avec une fonction oncliked ou alors tu edites le code de la fct OnInitDialog et tu mets le code suivant :
m_essai = "Tu vas voir ca va changer"; // tu mets ta chaine ds le label
m_essai.Format("%s",m_essai); // tu affiche ton label
UpdateData(FALSE); /: tu mets a jour la fenetre
ou alors plus rapide :
m_essai.Format("Tu vas voir ca va marcher");
UpdateData(FALSE);
Et voila...... simple ???
Voila mail moi pour savoir si ca a marche.....
Bye
Header .h
Grolu
Messages postés6Date d'inscriptionvendredi 18 janvier 2002StatutMembreDernière intervention 1 avril 2002 18 janv. 2002 à 10:20
Heu, c'est quoi ça ?
m_essai = "Tu vas voir ca va changer"; // tu mets ta chaine ds le label
m_essai.Format("%s",m_essai); // tu affiche ton label
Quelques précisions sur le principe général des boites de dialogue MFC :
- on crée des contrôles (avec un nom différent de IDC_STATIC si on veut les utiliser dynamiquement),
- on associe les contrôles à des attributs, soit des attributs représentant la valeur du contrôle pour les contrôles simples (comme CString pour un label, généralement), soit en associant des attributs du type du contrôle (par exemple CListCtrl pour un contrôle liste) pour les contrôles un peu plus complexes,
- pour les contrôles associés à un attribut-valeur, on modifie l'attribut puis on appelle UpdateData(FALSE) pour que les valeurs des attributs soient répercutées sur les contrôles, ou au contraire UpdateData(TRUE) pour que les valeurs des contrôles soient répercutées sur les attributs (il faut bien avoir à l'esprit que les attributs associés ne représentent pas directement la valeur du contrôle, mais une copie de ceux-ci, d'où le mécanisme UpdateData qui permet de faire la copie dans un sens ou un autre, et d'afficher le changement au passage)