Last Updated 2003/02/21
Programming Tips Visual C++ MFC ステータスバー  索 引 
プログレスバーを貼り付ける
2003/02/21

ステータスバーへプログレスバーを貼り付ける

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;
}


参照
前後のTips
プログレスバーを貼り付ける

DSS ProgrammingTipsCGI Ver2.02