WinAPI导航回/前进

时间:2017-03-01 11:04:24

标签: c++ winapi

在任何Web浏览器和Windows文件管理器以及许多其他应用程序中,都支持向前和向后导航。如果您的鼠标有任何鼠标按钮,则默认情况下(或至少大部分时间)默认使用额外的鼠标按钮。

我想在基于WinAPI的C ++应用程序中实现这一点。不过我想知道怎么会这样做?是否捕获了鼠标按钮"手动"在每个具有此向前/向后导航的应用程序中,或者在WinAPI中的某个位置是否存在本机支持?

手动捕获按钮可能总是一个选项,但如果已经存在处理此功能的现有功能,那么似乎应该使用它。这也可能更可靠。

总结一下:我希望我的应用程序能够正确处理/接收来自具有此类按钮的鼠标的向后和向前点击。

1 个答案:

答案 0 :(得分:2)

WM_APPCOMMAND消息提供APPCOMMAND_BROWSER_FORWARD(“向前导航”)和APPCOMMAND_BROWSER_BACKWARD(向后导航)导航命令。您可以在应用程序中处理它们,即使它不是浏览器。

文档包含有关生成WM_APPCOMMAND的方式和时间的信息:

  

DefWindowProc在处理WM_XBUTTONUPWM_NCXBUTTONUP消息时,或者当用户键入应用程序命令键时,会生成 WM_APPCOMMAND 消息。