使用图像在工具栏控件列表

默认情况下,按钮使用的图像在工具栏控件存储为单个位图。 但是,还可存储按钮图像设置图像列表。 工具栏控件对象可以单独使用三个图像列表中:

  • 启用图像列表包含当前已启用的工具栏按钮的图像。

  • 禁用图像列表包含当前禁用的工具栏按钮的图像。

  • 显示的图像列表包含当前显示的工具栏按钮的图像。 ,仅当工具栏使用 TBSTYLE_FLAT 样式时,此图像列表使用。

,当您将自身与 CToolBarCtrl 对象时,这些列表工具栏控件使用图形。 此关联。提交完成调用 CToolBarCtrl::SetImageListSetDisabledImageListSetHotImageList

默认情况下, MFC 使用 CToolBar 类实现 MFC 应用程序工具栏。 但是, GetToolBarCtrl 成员函数来检索嵌入 CToolBarCtrl 对象。 使用返回的对象,然后可以调用 CToolBarCtrl 成员函数。

下面的示例通过将启用演示此项技术 (m_ToolBarImages),并禁用 (m_ToolBarDisabledImages) 图像列表。 CToolBarCtrl 对象 (m_ToolBarCtrl)。

CWinApp* pApp= AfxGetApp();

m_ToolBarImages.Create(16, 16, ILC_COLOR, 4, 4);
m_ToolBarImages.Add(pApp->LoadIcon(IDI_BLK));
m_ToolBarImages.Add(pApp->LoadIcon(IDI_RED));
m_ToolBarImages.Add(pApp->LoadIcon(IDI_YELL));
m_ToolBarImages.Add(pApp->LoadIcon(IDI_WHI));

m_ToolBarDisabledImages.Create(16, 16, ILC_COLOR, 4, 4);
m_ToolBarDisabledImages.Add(pApp->LoadIcon(IDI_DIS_BLK));
m_ToolBarDisabledImages.Add(pApp->LoadIcon(IDI_DIS_RED));
m_ToolBarDisabledImages.Add(pApp->LoadIcon(IDI_DIS_YELL));
m_ToolBarDisabledImages.Add(pApp->LoadIcon(IDI_DIS_WHI));

m_ToolBarCtrl.SetImageList(&m_ToolBarImages);
m_ToolBarCtrl.SetDisabledImageList(&m_ToolBarDisabledImages);

备注

图像列表使用由工具栏对象必须是永久对象。因此,它们通常是 MFC 类的数据成员;在此示例中,主框架窗口类。

一旦图像列表与 CToolBarCtrl 对象,则框架将自动显示相应的按钮图像。

请参见

参考

使用CToolBarCtrl

概念

控件(MFC)