首页
学习
活动
专区
圈层
工具
发布
社区首页 >问答首页 >使用资源文件中的位图

使用资源文件中的位图
EN

Stack Overflow用户
提问于 2017-07-27 03:17:24
回答 1查看 398关注 0票数 0

我有一个使用位图图像的工具栏。我使用的是示例文件中的通用位图,它们工作得非常好。

但是,当我尝试为这个实例添加一个新的位图图标时,它的close.bmp (它的大小也是16x15px,就像所有其他图标一样),我的程序会给我错误。

我只需要知道如何使用资源文件中的位图

错误

代码语言:javascript
复制
../../src/msw/toolbar.cpp(799): assert "Assert Failure" failed in 
Realize():invalid tool button bitmap

Cant load bitmap 'close' from resources! Check.rc file.

资源.rc

代码语言:javascript
复制
new BITMAP "bitmaps/new.bmp"
open BITMAP "bitmaps/open.bmp"
save BITMAP "bitmaps/save.bmp"
help BITMAP "bitmaps/help.bmp"
close BITMAP "bitmaps/close.bmp"

.cpp

代码语言:javascript
复制
{
    // Set up toolbar
    enum
    {
        Tool_new,
        Tool_open,
        Tool_save,
        Tool_help,
        Tool_close,
        Tool_Max
    };

    wxBitmap toolBarBitmaps[Tool_Max];

#if USE_XPM_BITMAPS
    #define INIT_TOOL_BMP(bmp) \
        toolBarBitmaps[Tool_##bmp] = wxBitmap(bmp##_xpm)
#else // !USE_XPM_BITMAPS
    #define INIT_TOOL_BMP(bmp) \
        toolBarBitmaps[Tool_##bmp] = wxBITMAP(bmp)
#endif // USE_XPM_BITMAPS/!USE_XPM_BITMAPS



    INIT_TOOL_BMP(new);
    INIT_TOOL_BMP(open);
    INIT_TOOL_BMP(save);
    INIT_TOOL_BMP(help);
    INIT_TOOL_BMP(close);

    toolBar->AddTool(wxID_ANY, wxT("New"), toolBarBitmaps[Tool_new], wxNullBitmap, wxITEM_NORMAL, wxT("New IWEX Project"));
    toolBar->AddTool(wxID_ANY, wxT("Open"), toolBarBitmaps[Tool_open], wxNullBitmap,wxITEM_NORMAL , wxT("Open IWEX Project"));
    toolBar->AddTool(idFileClose, wxT("Close"), toolBarBitmaps[Tool_close], wxT("Close button"), wxITEM_NORMAL);

    toolBar->Realize();

}
EN

回答 1

Stack Overflow用户

回答已采纳

发布于 2017-07-27 04:19:52

所以我能够解决这个问题。代码似乎不是问题。它是位图文件格式。我不是很确定为什么会有不同,但我从GIMP编辑照片大小,我会得到问题。同样的图像,如果我使用FastStone图像查看器调整大小,它似乎工作正常。

票数 0
EN
页面原文内容由Stack Overflow提供。腾讯云小微IT领域专用引擎提供翻译支持
原文链接:

https://stackoverflow.com/questions/45335663

复制
相关文章

相似问题

领券
问题归档专栏文章快讯文章归档关键词归档开发者手册归档开发者手册 Section 归档