1

我正在使用带有工具栏的 MFC 应用程序。

我需要在某个类中使用此工具栏的按钮。

但是,我没有找到如何将工具栏按钮事件映射到我班级的方法。

我在属性菜单中看到我可以将事件映射到方法。但是按钮的名称不在事件列表中。

该按钮已在其他类中使用。

那么如何在我的班级中映射工具栏按钮?

4

1 回答 1

1

接收工具栏消息的唯一类是视图窗口、大型机、文档和 CWinApp。工具栏/菜单消息不会路由到其他类。如果您解释您尝试将工具栏消息处理程序添加到哪种类中,您的问题会更清楚。

另一个问题是 Visual Studio 向导假定有一个与每个工具栏按钮具有相同 ID 的菜单命令。所以它只列出菜单 ID,而不是没有匹配菜单命令的工具栏 ID。但是你可以很容易地把一个工具栏按钮映射到一个类方法,而无需向导的帮助,只需在类消息映射中加入这样的一行:

    ON_COMMAND(ID_NEW_TOOLBUTTON, OnNewToolbutton)

但它只适用于上述接收工具栏消息的类。

于 2013-06-13T15:59:47.087 回答