窗口可以为其窗口属性数据创建句柄,并将数据用于任何目的。以下示例使用GetProp获取由PROP_ICON,PROP_CURSOR和PROP_BUFFER标识的窗口属性的句柄。该示例然后在窗口的客户区中显示新获得的内存缓冲区,光标和图标的内容。
#define PATHLENGTH 256
HWND hwndSubclass; //一个子类窗口的句柄
HANDLE hIconProp, hCursProp;
HGLOBAL hMemProp;
char *lpFilename;
TCHAR tchBuffer[PATHLENGTH];
int nSize;
HDC hdc;
//获取窗口属性,然后使用数据。
hIconProp = (HICON) GetProp(hwndSubclass, "PROP_ICON");
TextOut(hdc, 10, 40, "PROP_ICON", 9);
DrawIcon(hdc, 90, 40, hIconProp);
hCursProp = (HCURSOR) GetProp(hwndSubclass, "PROP_CURSOR");
TextOut(hdc, 10, 85, "PROP_CURSOR", 9);
DrawIcon(hdc, 110, 85, hCursProp);
hMemProp = (HGLOBAL) GetProp(hwndSubclass, "PROP_BUFFER");
lpFilename = GlobalLock(hMemProp);
nSize = sprintf(tchBuffer,
"Path to file: %s", lpFilename);
TextOut(hdc, 10, 10, tchBuffer, nSize);