ステータスバーへプログレスバーを貼り付ける
HWND HSbWnd; // ステータスバーのウィンドハンドル
HINSTANCE hInst; // 自プロセスのインスタンスハンドル
HWND CreateProgressBar(HWND hSbWnd)
{
HWND hPbWnd; // プログレスバーのウィンドハンドル
RECT rc; // 領域の大きさを格納するRECT構造体
// ステータスバーの2番目の領域の大きさを取得
//(WPARAMに与える値は0オリジン)
SendMessage(hSbWnd, SB_GETRECT, (WPARAM)1, (LPARAM)&rc);
hPbWnd = CreateWindowEx(0,
PROGRESS_CLASS,
"ProgressBar",
WS_CHILD | WS_VISIBLE,
rc.left, rc.top,
rc.right - rc.left, rc.bottom - rc.top,
hSbWnd, //親はステータスバー
NULL,
hInst,
NULL);
// レンジは0〜100でステップは5
SendMessage(hPbWnd, PBM_SETRANGE, 0, MAKELONG(0,100));
SendMessage(hPbWnd, PBM_SETSTEP, (WPARAM)5, 0);
return hPbWnd;
}
参照