有关如何在 Windows 中实现重音字符的任何指针都会有所帮助。
目标 - 能够使用诸如 ctrl + ' 后跟元音之类的击键以及适用于 MS Word、文本键盘等标准应用程序的所有其他组合来添加重音字符 (áéíóú)。
迄今为止我的发现- 我可以在任何地方阅读与 WM_DEADCHAR 消息相关的文档/博客/论坛。我的理解是:::TranslateMessage 将对应于死键的 WM_KEYUP 消息转换为 WM_DEADCHAR 消息,并将死键生成的 WM_SYSKEYUP 消息转换为 WM_SYSDEADCHAR 消息. Windows 提供了将这些消息与字符消息组合以生成重音字符的逻辑,因此通常传递死键消息以进行默认处理。
我将此消息添加到我的 CWnd 派生类的消息映射中,但 OnDeadChar() 永远不会被调用。此外,我发现使用 SPY++,即使在 MSWord、Textpad 等可以通过这些击键组合添加重音字符的情况下,WM_DEADCHAR 消息也永远不会发送。那么,这是否意味着 WM_DEADCHAR 实际上不是解决此问题的方法?
请提供任何示例代码/步骤/机制来实现重音字符。
提前致谢!!!