Position souris sur un bouton avec vc++6

Résolu
hadrien1 Messages postés 8 Date d'inscription jeudi 2 décembre 2004 Statut Membre Dernière intervention 6 mars 2006 - 14 janv. 2006 à 15:23
vecchio56 Messages postés 6535 Date d'inscription lundi 16 décembre 2002 Statut Membre Dernière intervention 22 août 2010 - 15 janv. 2006 à 09:30
Bonjour,





Voila j'ai fabriqué une classe CBtButton dérivé de CButton, j'ai ajouté
aussi la gestion du message WM_MOUSEMOVE jusque la impecable. J'ai
aussi ajouté un bouton et mis le control avec ma classe fraichement
construite et un edit pour afficher la position de la souris.




Mais mon problème c'est que je n'arrive pas a utilisé ma variablé
de l'edit a partir de la classe CBtButton. Je voudrai atteindre la
variable situé dans ma fenetre principale a partir de la fonction
OnMouseMove de la classe CBtButton.


Mon but final est d'afficher dans une edit box la position de la souris dans le bouton lorsque je survole le bouton.





Merci encore a bientot

PS: J'utilise visual c++ 6

5 réponses

vecchio56 Messages postés 6535 Date d'inscription lundi 16 décembre 2002 Statut Membre Dernière intervention 22 août 2010 14
15 janv. 2006 à 09:30
SetWindowText alors
3
vecchio56 Messages postés 6535 Date d'inscription lundi 16 décembre 2002 Statut Membre Dernière intervention 22 août 2010 14
14 janv. 2006 à 15:29
La fenêtre contenant le bouton et l'edit connait sans doute les deux.
Tu ajoutes une variable CEdit* dans ta classe CBtButton, ainsi qu'une méthode SetEdit
Puis, la fenêtre parente fait
m_button.SetEdit(&m_edit);
0
hadrien1 Messages postés 8 Date d'inscription jeudi 2 décembre 2004 Statut Membre Dernière intervention 6 mars 2006
14 janv. 2006 à 15:39
Merci de cette reponse rapide ^^
Je me suis peut etre mal exprimé, je voudrai que chaque appel de la fonction OnMouseMove de la classe CBtButton, l'edit box de la fenetre principale affiche les coordonées de la souris quand elle passe sur le bouton.

Ta fonction me permet t'elle de faire ceci? Je ne comprends pas trop alors ^^
0
vecchio56 Messages postés 6535 Date d'inscription lundi 16 décembre 2002 Statut Membre Dernière intervention 22 août 2010 14
14 janv. 2006 à 16:05
Le SetEdit tu le fais une fois, à la création. Ensuite tu as une CEdit* dans le classe CBtButton, que tu peux utiliser à chaque OnMouseMove

void CBtButton::SetEdit(CEdit* pEdit)
{
m_pEdit = pEdit;
}

int CBtButton::OnMouseMove(...)
{
m_pEdit->SetText(...);
...
}
0

Vous n’avez pas trouvé la réponse que vous recherchez ?

Posez votre question
hadrien1 Messages postés 8 Date d'inscription jeudi 2 décembre 2004 Statut Membre Dernière intervention 6 mars 2006
15 janv. 2006 à 01:47
J'ai compris ton idee mais j'ai encore un petit soucis, j'ai créé un controle CEDIT que je nomme m_edit1 a mon editbox
je fait un CBtButton m_BtEdit et un m_BtEdit.SetEdit(&m_edit1); dans le initdialog(); de ma fenetre principale.

Dans la classe CBtButton j'ai bien mis ma methode SetEdit et dans onmousemove(...) , la variable m_pEdit ne contient pas de fonction SetText ^^ :s

Je suis competement perdu, je chercherais demain en attandant vos conseils ^^

A plus
0
Rejoignez-nous