Frage

Ich schreibe eine Routine vom Benutzer definierbare Tastatur Short-Cuts für jeden Menüpunkt in meinem Windows Mobile 5-Anwendung zur Verfügung zu stellen, die in C ++ / MFC ist. Um dies zu tun ich alle verfügbaren Menübefehl IDs bekommen, und mit Hilfe der CWnd :: Postmessage (WM_COMMAND, MyMenuID), es senden an die Anwendung. Ich verwende diese Technik, um eine gute Wirkung an anderer Stelle für inter-thread Comms, aber nicht mit Menübefehl IDs. Irgendwelche Ideen, warum dies nicht funktioniert. Die App ist Dokumentansicht, und ich habe auf die CMainFrame und CView abgeleiteten Fenster versucht Posting. Ich könnte einen Gott schrecklich switch-Anweisung schreiben, aber ich fühle mich eine Nachricht veröffentlichen sollte funktionieren.

Edit: Ok, ich habe versucht, eine Reihe von Dingen, einschließlich Vorschläge von diesen Beitrag , ohne Erfolg. Big hässlich switch-Anweisung es jetzt ist, ich werde wieder aktualisieren, wenn ich etwas finden, besser.

War es hilfreich?

Lösung

Der einzige Grund, warum ich denken kann, wird die Nachricht an den falschen Fenster wird. Vergessen Sie nicht, dass nicht alle Menübefehle werden immer von einem bestimmten Fenster verarbeitet. Einige Menübefehle wie Ausschneiden sind in der Regel durch ein Sichtfenster verarbeitet. Andere werden von Rahmenfenstern verarbeitet und einige möglicherweise durch das Anwendungsobjekt.

Hope, das hilft.

Lizenziert unter: CC-BY-SA mit Zuschreibung
Nicht verbunden mit StackOverflow
scroll top