win32 5.2 图标和光标
-
图标和光标都是图形资源,其在程序中显示分两步:
- 首先先将找到该图片路径,并且加载到内存中,返回一个对应的资源句柄,表示其该资源在内存中的位置。
- 然后在程序中使用该句柄,调用有关资源。
注意:基本所有资源都要这两步,先加载到内存返回句柄,然后程序调用句柄来使用其资源,而不是程序直接从磁盘中读取显示文件,这个逻辑一定要理清。
-
图标和光标的资源定义:
图标ID ICON [DISCARDABLE] 图标文件名 光标ID CURSOR [DISCARDABLE] 光标文件名
-
使用光标和图标:
- 先是将 资源从磁盘加载到内存,并且程序获取资源句柄,可以看到其是在 创建窗口中完成的。
- 程序中 使用 光标和图标:
注意:WM_SETCURSOR,这个消息时通知窗口重新刷新光标而不是让它设定指定的光标。Windows中有个SetCursor函数可以用来设置光标,但只能位置很短时间,因为Windows重新向窗口发送WM_SETCURSOR,光标会恢复成原来的样子。并且Windows常常会自动的向窗口发送WM_SETCURSOR。所以,我们需要直接改变窗口属性,因为光标指定的图像的设置存储在窗口属性中,这个你一定要明确。
- 先是将 资源从磁盘加载到内存,并且程序获取资源句柄,可以看到其是在 创建窗口中完成的。