这里仅参照MFC的原代码,如下:
_AFXWIN_INLINE HICON CWnd::SetIcon(HICON hIcon, BOOL bBigIcon)
{
ASSERT(::IsWindow(m_hWnd));
return (HICON)::SendMessage(m_hWnd, WM_SETICON, bBigIcon, (LPARAM)hIcon);
}
逻辑十分简单,是通过SendMessage实现,使用SendMessage函数,LPARAM是图标句柄,WPARAM是一个BOOL值,指明hIcon是大图标还是小图标。函数返回之前的图标句柄。
真的很简单,做个笔记。