如何从资源创建工具栏?

Posted

技术标签:

【中文标题】如何从资源创建工具栏?【英文标题】:How to create a toolbar from resources? 【发布时间】:2012-02-12 03:45:05 【问题描述】:

我使用资源编辑器创建了一个工具栏资源 (IDR_TOOLBAR),如何使用基本的 Win32 API 将其添加到窗口中?

【问题讨论】:

@MitchWheat 我不想使用 CreateToolbarEx,因为 MSDN 说它已被弃用。找了好久,发现都是使用已有的GUI库或者加载位图,然后一个一个地添加按钮,不知道能不能简单地加载工具栏并添加到窗口中。跨度> CreateToolbarEx function documentation(你知道,你读到的那个告诉你该函数已被弃用)还说:“改用CreateWindowEx。例如,请参阅Using Toolbar Controls。” 这对你没有帮助吗? @CodyGray 是的,可以,但是我不能使用我的“工具栏资源”(没有这样的东西)来创建工具栏。 没错。没有“工具栏资源”之类的东西。除非您使用 MFC 之类的库(在其中您不会调用 CreateToolbarEx 或任何 SDK 函数),否则您甚至不清楚最终是如何获得的。 【参考方案1】:

WIN32 API 没有“工具栏资源”的东西。

工具栏资源是诸如CToolbar 等MFC 类的工件。 它实际上包含一个位图(包含图像的条纹,并具有相同的工具栏 ID)和一个 RT_TOOLBAR(实际上是 MAKEINTRESOURCE(241))资源类型,它是一个线性向量,包含要映射到图像的命令.您可以使用FindResource / LoadResource 来阅读它。

【讨论】:

以上是关于如何从资源创建工具栏?的主要内容,如果未能解决你的问题,请参考以下文章

如何在 Win32 窗口中实现 MFC 资源?

QT从控件部分知识点整理

Azure Data PlatformETL工具(20)——创建Azure Databricks

Azure Data PlatformETL工具(20)——创建Azure Databricks

如何动态创建CMFCToolbar的SetOriginalState?

如何在 Microsoft azure 存储资源管理器工具中删除表列名称?