Pb pour recuper le callback

Signaler
Messages postés
5
Date d'inscription
mardi 29 janvier 2002
Statut
Membre
Dernière intervention
18 mai 2003
-
Messages postés
5
Date d'inscription
mardi 29 janvier 2002
Statut
Membre
Dernière intervention
18 mai 2003
-
Je comprend pas bien comment faire pour recuperer un callback (de mon icon placer en barre des taches)
pour faire apparaitre un menu par exemple

en VC++ 6.00
ps:je suis un novice

voici ce que j ai fait (selon les msdn)
j ai placer ca dans onInitDialogue

NOTIFYICONDATA ndata;
ndata.cbSize = sizeof(NOTIFYICONDATA);
ndata.hWnd=CTest2Dlg::m_hWnd;
ndata.uID = 1;
ndata.uFlags = NIF_MESSAGE | NIF_ICON | IF_TIP;
ndata.uCallbackMessage=WM_MOUSEMOVE
ndata.hIcon = AfxGetApp()->LoadIcon(IDI_ICON1);

strcpy(ndata.szTip, "TCP/IP");
Shell_NotifyIcon(NIM_ADD, &ndata);

si quelqu un sait comment gerer ndata.uCallbackMessage=WM_MOUSEMOVE
Pour recuper le click droit par exemple

+++++
merci

3 réponses

Messages postés
5
Date d'inscription
mardi 29 janvier 2002
Statut
Membre
Dernière intervention
18 mai 2003

Jai trouver (enfin on m as aider )

#define WM_MyMessage 100

ON_MESSAGE(WM_MyMessage,traiteicon)

ndata.uCallbackMessage = WM_MyMessage;

void CTest2Dlg::traiteicon(WPARAM wParam, LPARAM lParam)
{
UINT uMouseMsg;
uMouseMsg = (UINT) lParam;

if (uMouseMsg == WM_RBUTTONUP)
{
CPoint point;
UINT nFlags;

nFlags=GetCursorPos(&point);//Les coordonees de la souris

CMenu menu_bar;
menu_bar.LoadMenu(IDR_MENU1);//Load le menu en question
CMenu* file_menu = menu_bar.GetSubMenu(0); //Load le sous menu
ASSERT(file_menu);

file_menu->TrackPopupMenu(TPM_RIGHTBUTTON, point.x,
point.y, this);
}

}

et ca roule :)

+++
lombric
Messages postés
949
Date d'inscription
mardi 2 octobre 2001
Statut
Membre
Dernière intervention
8 juillet 2006

Petite remarque: évite de définir un entier au
hasard pour ton message car il correspond peut-être à un message déjà utilisé.
Utilise plutôt la constante WM_USER:

#define WM_MYMESSAGE (WM_USER +1)
Messages postés
5
Date d'inscription
mardi 29 janvier 2002
Statut
Membre
Dernière intervention
18 mai 2003

C est chose faite je te remercie du conseil

+++
merci