maus position beim klick aufs trayicon
-
hiho
wie bekomme ich die mausposition wenn ich aufs trayicon klicke ?
ich will wenn ich mit rechts drauf klicke nen menü erscheinen lassen dazu brauche ich laut dem was ich gefunden habe die position der maus//tray messagemap LRESULT CRfcDlg::OnTrayNotification(WPARAM wp, LPARAM lp) { switch (lp) { case WM_LBUTTONDBLCLK: return killtray(); break; case WM_RBUTTONDOWN: break; } return 0; } //das was ich zum menü gefunden habe CPoint m_Point = point; ClientToScreen(&m_Point); CMenu *m_Kontextmenu = new CMenu(); m_Kontextmenu->LoadMenu(IDR_KONTEXTMENU); CMenu *pMenu = m_Kontextmenu->GetSubMenu(0); UINT nID=(UINT)pMenu->TrackPopupMenu (TPM_LEFTALIGN|TPM_TOPALIGN|TPM_RETURNCMD| TPM_LEFTBUTTON,m_Point.x,m_Point.y,this,NULL); delete m_Kontextmenu; if (nID!=0) PostMessage(WM_COMMAND,nID,0);
-
ok habs mit GetCursorPos() gemacht
nu hab ich nurnoch das problem wenn das menü hochpopt und ich dann ausserhalb klicke bleibt das ding immanoch...
wie bekomm ich das nu wieda gebacken ?
-
Schau mal in die FAQ...
-
PostMessage(FHandle, WM_NULL, 0, 0); SendMessage(FHandle, WM_RBUTTONUP, 0, 0);
hinter das TrackPopupMenu(...) setzen.
-
@WebFritzi geht imma noch net ...
-
WM_MOUSEOVER oder so was ähnliches dann
WM_MOUSOVER(pos == 0);
oder so was...