我需要向我的 MDI 应用程序中的所有子窗口发送 WM_KEYDOWN 消息。这个想法是一个特定的按键刷新一个窗口,我想只按一次按键就刷新所有子 wnd。除了刷新之外,还有更多这样的功能,例如右/左/上/下箭头键等,需要转到这些子 wnd 中的每一个。
我在 STL 列表中维护所有可用/符合条件的子窗口的列表(在子窗口/视图创建期间完成)。现在,我在哪里可以捕获按键并将其传递给此列表中的所有子窗口?实施的一些细节也将受到赞赏。
经过一番灵魂和互联网搜索,我得出的结论是 SendMessageToDescendants 应该会有所帮助。现在: 1. 从哪里调用 SendMessageToDescendants 2. 如何将 CView 的 OnKeyDown(UINT nChar, UINT nRepCnt, UINT nFlags) 所需的参数传递给 void SendMessageToDescendants( UINT message, WPARAM wParam = 0, LPARAM lParam = 0, BOOL bDeep = TRUE, BOOL bOnlyPerm = FALSE);