MFC CToolBar帮助/链接?

时间:2010-09-23 21:25:08

标签: c++ mfc toolbar

我找不到所有东西的简单CToolBar示例..

我在资源编辑器中创建了一个工具栏,并在我的代码中加载了工具栏,如下所示:

toolbar = new CToolBar;
toolbar->CreateEx(this, TBSTYLE_FLAT, WS_CHILD | WS_VISIBLE | CBRS_ALIGN_TOP, CRect(0, 0, 0, 0), AFX_IDW_TOOLBAR);
toolbar->LoadToolBar(IDR_TOOLBAR);

我还在消息地图中处理了WM_LBUTTONDOWN。

现在,所有按钮都显示为灰色..我在某个地方错过了一步吗?

感谢您的帮助/链接=)

2 个答案:

答案 0 :(得分:3)

默认情况下,MFC中禁用工具栏中的按钮。对于应与命令ID关联的每个按钮,您需要在消息映射中使用ON_UPDATE_COMMAND_UI宏。只要应用程序处于空闲状态,就会调用此宏中使用的处理函数。此函数可以调用传递给函数的CCmdUI指针的成员函数,例如Enable方法。

答案 1 :(得分:1)

您是否在消息映射中提供了ON_COMMAND处理程序?应该看起来像 ON_COMMAND(SOME_BUTTON_ID,OnSomeButton),其中SOME_BUTTON_ID对应于工具栏上的一个按钮。