作者:销销销hdbuaj | 来源:互联网 | 2023-05-18 23:42
弱弱的问一个问题哈,IDB_BITMAP1是Resourceidentifieroftheabitmap,那IDB_BITMAP1是什么类型呢?它是整形吗?如果是,那是不是每一个.ico都可
弱弱的问一个问题哈,IDB_BITMAP1是Resource identifier of the a bitmap,那IDB_BITMAP1是什么类型呢?它是整形吗?如果是,那是不是每一个.ico都可以用一个int类型来表示呢?比如说1388。
那我自己设计了一个.ico,请问我怎么获取这个icon的数值呢?(不是要IDB_BITMAP,而是需要它的具体值)
8 个解决方案
我怎么才把一个图片和具体的Resource identifier 联系起来呢?比如我自己设计了一个图片。
主要是需要调用下面这个结构,但是nIDOld和nIDNew这两个参数我不知道该怎么设置,请教给位大虾们!
我使用的是一个全局钩子,通过捕获任意的鼠标右键消息,然后来修改托盘中指定图标的ICON。需要使用到TB_REPLACEBITMAP这个消息。但是该消息的lParam参数是TBREPLACEBITMAP结构。
MSDN对TBREPLACEBITMAP的描述:
typedef struct {
HINSTANCE hInstOld;
UINT nIDOld;
HINSTANCE hInstNew;
UINT nIDNew;
int nButtons;
} TBREPLACEBITMAP, *LPTBREPLACEBITMAP;
Used with the TB_REPLACEBITMAP message to replace one toolbar bitmap with another.
hInstOld
Module instance handle to the bitmap resource being replaced.
nIDOld
Resource identifier of the bitmap being replaced.
hInstNew
Module instance handle that contains the new bitmap resource.
nIDNew
Resource identifier of the new bitmap.
nButtons
Number of button images contained in the new bitmap.
IDB_BITMAP1是一个宏定义,表示一个常整型数
VC编写Windows程序,缺省所有资源的宏定义均在工程目录下的Resource.h中,你可以找到你需要的ID号
但要记住,ID号与软件运行过程中获得的资源HANDLE值是两回事,不能直接进行操作
那如果这个程序不是我设计的,比如说我想修改托盘里面WINDOWS系统自己的“音量”ICON,那我是不是没有办法知道“音量”图标的nIDOld这个值呢?要是我不能获取这个值,我就不能用其它的图标来替换它了。具体说我应该怎么设置TBREPLACEBITMAP结构中的nIDOld和nIDNew这两个参数。请大家帮帮忙啊!
ICO和ToolBar上按钮BITMAP是两回事,如何注入程序更换ICO我没有做过,帮顶
前提是你要有这个程序改变ico的接口吧 。 就像windows 的 icon提供主题修改的接口, window blinds 、style xp 都是这样的程序 。
路过帮顶 。
IDB_BITMAP1 是一个UINT,映射到编译后的文件,资源是二进制数据,如果要编程替换比较麻烦。
你可以在resource.h中找到这个,其实是一个宏定义,对应的是一个数字.
#define IDB_BITMAP1 101
UINT类型的