【问题标题】:Create resource from existing .ico icon从现有 .ico 图标创建资源
【发布时间】:2018-01-28 17:02:12
【问题描述】:

我有一个 .ico 格式的图标。我想将它作为资源添加到我的 VC++ 项目中。我想使用 wxWidgets 将其设置为主图标。

我右键点击资源,我的选择是现有项目和新项目。如果我选择新项目和 .ico,它会弹出一个位图编辑器。这不可能。所以我选择“现有项目”并将 foo.ico 放入资源中。但以下失败:

wxFrame::SetIcon(wxICON(foo));

我尝试过各种装饰,比如 foo.ico 和 wxBITMAP_TYPE_ICO_RESOURCE,yada yada,但我还没有找到完美的组合。

编辑:我在网上发现了一些东西,说我需要创建一个新资源并将 foo.ico 添加到其中。我尝试按照说明进行操作,但没有任何乐趣。

【问题讨论】:

  • 前段时间,我对exe文件使用了资源图标,并使用了您在编辑部分提到的方式,然后依靠Visual Studio的资源编译器完成了剩下的工作。

标签: visual-c++ wxwidgets embedded-resource .ico


【解决方案1】:

我设法做到了,但一定有更好的方法。

我从 wxWidgets 示例中复制了一个资源文件,即 sample.rc。我在文本编辑器中对其进行了编辑,在几个地方用 foo.ico 替换了图标名称。我还注释掉了一个引用 wxWidget 项目目录的#include。在 Visual Studio 中,我将该文件添加到资源中。在我程序的 MyFrame 构造函数中,我写道,

SetIcon(wxICON(sample));

非常老套,但它确实有效。

【讨论】:

  • 不是骇客。资源文件 .rc 是向 Windows 项目提供图标和其他资源并让它们位于可执行文件中的最简单方法。
  • @Ripi2 在文本编辑器中编辑现有的 .rc 对我来说似乎很不自然。大概有一种方法可以在 Visual Studio 中创建和填充新的,但是菜单和选项的迷宫对我来说太危险了。
  • 如果您愿意,您应该能够使用 IDE 添加图标(我也承认我不明白这一点),但您应该删除包含wx/msw/wx.rc,如果您不包含其中定义的资源,则需要它,并且杂项随机事物可能会破坏。
猜你喜欢
  • 2021-04-13
  • 1970-01-01
  • 2022-07-24
  • 1970-01-01
  • 1970-01-01
  • 1970-01-01
  • 2019-05-11
  • 1970-01-01
  • 2020-12-11
相关资源
最近更新 更多