アイコンの描画
構文 BOOL DrawIconEx(HDC hdc,int X,Y,HICON hIcon,int Width,int Height,UINT CurIndex,HBRUSH hBrush,UINT Flags);
引数説明 HDC hdc:デバイス コンテキストのハンドル
int X:左上隅のX座標
int Y:左上隅のY座標
HICON hIcon:描画するアイコンのハンドル
int Width:アイコンの幅
int Height:アイコンの高さ
UINT CurIndex:アニメーションカーソルのフレームのインデックス
HBRUSH hBrush:背景ブラシへのハンドル
UINT Flags:アイコンを描くフラグ
戻り値 正常に終了した場合は、 TRUEを返します。
失敗した場合はFALSEを返します。
補足
CurIndex もしhIconがアニメーションカーソルを識別すれば作るためにフレームのインデックスを明示します。
hBrush システムがフリッカー・フリーの絵のために使うブラシを識別します。もしhBrushが有効なブラシ・ハンドルなら、システムは、背景色のために指定されたブラシを利用したオフ・スクリーン・ビットマップを作り出して、ビットマップへアイコン、あるいはカーソルを描いて、その時、ビットマップをコンテキストがhdcによって識別したデバイスにコピーします。もしhBrushが無効なら、システムは、直接デバイス・コンテキストへアイコン、あるいはカーソルを描きます。
アイコンを描くフラグ
DI_COMPAT:システム・デフォルトを利用したアイコン
DI_DEFAULTSIZE:幅、および高さを利用したアイコン、Width、およびHeightがゼロなら、機能は、実際のリソース・サイズを使います。
DI_IMAGE:幅、および高さを利用したアイコン、あるいはカーソルがシステム測定基準価値によって明示した引き分けは、イメージによって明示されたラスター演算を実行します。
DI_MASK:マスクによって明示されたラスター演算を実行します。
DI_NORMAL:DI _ IMAGEとDI _ MASKの組み合わせ。
<例>
HICON icon=LoadIcon(NULL,IDI_QUESTION);//Windowsの定義済みアイコンを使う場合

//読み込んだアイコンを指定ウインドウに描画(アイコンサイズ 32×32) 
HDC hdc=GetDC(hwnd);//ウインドウのHDC(デバイスコンテキスト)を取得する。
DrawIconEx(hdc, 0, 0, icon,32,32,0,NULL,DI_NORMAL);

//16×16のアイコンを使う場合はLoadImageでアイコンを読み込む
HICON icon=LoadImage(HInstance,"ICON1",IMAGE_ICON,16,16,LR_DEFAULTSIZE);
HDC hdc=GetDC(hwnd);//ウインドウのHDC(デバイスコンテキスト)を取得する。
DrawIconEx(hdc, 0, 0, icon,16,16,0,NULL,DI_NORMAL);