首页 诗词 字典 板报 句子 名言 友答 励志 学校 网站地图
当前位置: 首页 > 教程频道 > 开发语言 > VC/MFC >

msdn下的一个工具条的例子

2013-03-01 
msdn上的一个工具条的例子TBBUTTON tbButtons[numButtons] {{ MAKELONG(STD_FILENEW,ImageListID), IDM_N

msdn上的一个工具条的例子
   TBBUTTON tbButtons[numButtons] = 
    {
        { MAKELONG(STD_FILENEW,  ImageListID), IDM_NEW,  TBSTATE_ENABLED, buttonStyles, {0}, 0, (INT_PTR)L"New" },
        { MAKELONG(STD_FILEOPEN, ImageListID), IDM_OPEN, TBSTATE_ENABLED, buttonStyles, {0}, 0, (INT_PTR)L"Open"},
        { MAKELONG(STD_FILESAVE, ImageListID), IDM_SAVE, 0,               buttonStyles, {0}, 0, (INT_PTR)L"Save"}
    };

STD_FILEOPEN是 windows自定义的  id, 和imagelistid组合后 是什么意思呢?

难道可以随意组合嘛? 我觉得 随意组合后的结果,还是一个正确的位图id嘛?

怕不是吧。
怎么可以随意组合呢? 
[解决办法]
// icon indexes for standard bitmap

#define STD_CUT                 0
#define STD_COPY                1
#define STD_PASTE               2
#define STD_UNDO                3
#define STD_REDOW               4
#define STD_DELETE              5
#define STD_FILENEW             6
#define STD_FILEOPEN            7
#define STD_FILESAVE            8
#define STD_PRINTPRE            9
#define STD_PROPERTIES          10
#define STD_HELP                11
#define STD_FIND                12
#define STD_REPLACE             13
#define STD_PRINT               14

如果:const int ImageListID    = 0;
MAKELONG(STD_FILEOPEN, ImageListID) 后 还是 STD_FILEOPEN
不 需要 这么 搞的。

你要 试试的话,可以改 高字:
const int ImageListID    = 1;
MAKELONG(STD_FILEOPEN,ImageListID)
这个 1 可能 自绘时 会 用到。 

热点排行