Trackpopupmneu mit Mausklick
-
Ich habe ein TrackPopupmenu welches ich durch einen Mausklick auf ein Icon in der SystemTray aufrufe. Ich möchte es auch an der Mausposition anzeigen lassen wenn das Programmfenster versteckt ist. Wie kann ich die Mausposition auch ausherhalb des Programmfensters bei gedrückter maustaste ermitteln. So klappt es nicht, da hier das Programmfenster als Referenz genommen wird und nicht der ganze Bildschirm
point.x = LOWORD (lParam) ; point.y = HIWORD (lParam) ; ClientToScreen(hwnd,&point); TrackPopupMenu (hMenu, TPM_RIGHTBUTTON, point.x, point.y, 0, hwnd, NULL) ;Edit---
Das ganze unter WinApi ; bin ins falsche Forum
-
Dieser Thread wurde von Moderator/in HumeSikkins aus dem Forum C++ in das Forum WinAPI verschoben.
Im Zweifelsfall bitte auch folgende Hinweise beachten:
C/C++ Forum :: FAQ - Sonstiges :: Wohin mit meiner Frage?Dieses Posting wurde automatisch erzeugt.
-
Platform SDK schrieb:
The GetCursorPos function retrieves the cursor's position, in screen coordinates
...und auch mal die Remarks in der MSDN/Platform SDK zu TrackPopupMenu() angucken:
Man soll nämlich vor TrackPopupMenu() noch SetForegroundWindow() aufrufen und nach TrackPopupMenu() noch PostMessage(WindowHandle, WM_NULL, 0, 0); ergänzen.
Es gab (oder gibt ?!) mal einen Bug, bei dem sonst das Kontextmenü hin- und wieder einfach mal direkt nach dem Öffnen von alleine wieder zu gegangen ist...
-
Problem selber gelößt. Läuft wunderbar.
Danke
mww