ICON
LoadIcon(hInstance,MAKEINTRESOURCE(IDI_MYICON)):IDI_MYICON是资源标识,定义在resource.h里。
LoadIcon(hInstance,TEXT("MYICON"):修改资源标识为"MYICON"(包括引号)或者修改.rc文件的 一行中的IDI_MYICON为"MYICON"(不包括引号),可以以字符串加载。
GetSystemMetrics(SM_CXICON)和GetSystemMetrics(SM_CYICON)可以得到大图标大小,SM_CXSMICON和SM_CYSMICON参数可以得到小图标大小。
DrawIcon(hdc,x,y,hIcon):在客户区显示图标,(x,y)是图标右上角坐标。
SetClassLong(hwnd,GCL_HICON,hIcon):创建窗口之后修改图标。
GetClassLong(hwnd,GCL_HICON):获取图标句柄。
CreateIcon、CreateIconIndirect、CreateIconFromResource可以动态创建图标,需要DestroyIcon清除句柄。
CURSOR
方法与ICON相似。对子窗口使用不同的的鼠标位图,可以用SetClassLong(hwndChild,GCL_HCURSOR,hCursor)。如查要在客户区不同的区域使用用不同的图标,那么捕获WM_MOUSEMOVE消息,调用SetCursor(hCursor)。
字符串资源
LoadString(hInstance,IDS_STRING,szBuffer,iMaxLength):返回字符串长度。
自定义资源(Custom Resource)
自定义资源的数据可以是任何格式,Windows API能把数据调入内存并返回指针,用户可以对数据做任意处理,在处理各种私有数据时,这个方法要比数据存储在外部文件方便多了。添加资源后,.rc文件会有像这样的语句: MYTYPE是自定义的类型,DATA.BIN是要加载的文件名。程序编译链接后,DATA.BIN的数据会被绑定到.exe文件中。
LoadResource(hInstance,FindResource(hInstance,TEXT("MYTYPE"),MAKEINTRESOURCE(IDR_MYTYPE))):返回HGLOBAL类型变量。LoadIcon和LoadCursor函数中实际也调用了FindResource。
LockResource(hResource):把资源调入内存。LoadResource并不真正把数据调入内存,如果要访问数据,调用这个函数,返回数据指针。
FreeResource(hResource):资源用完,释放资源。即使不调用这个函数,程序结束也会自动释放。