VC++进度条process Bar的用法实例


本文实例讲述了VC进度条的用法实例,分享给大家供大家参考。具体实现代码如下:

复制代码 代码如下:
#include <Windows.h> 
#include "resource.h" 
#include <Commctrl.h> 
//对话框函数 
INT_PTR CALLBACK DialogProc( 
    __in  HWND hwndDlg, 
    __in  UINT uMsg, 
    __in  WPARAM wParam, 
    __in  LPARAM lParam 
    ) 

    switch (uMsg) 
    { 
    case WM_INITDIALOG: 
        { 
            //初始化进度条控件 
            HWND hWndProcess = ::GetDlgItem(hwndDlg, IDC_PROGRESS1); 
            //设置范围(0, 100) 
            ::SendMessage(hWndProcess, PBM_SETRANGE, 0, MAKELPARAM(0, 100)); 
             
            //设置步进大小 
            ::SendMessage(hWndProcess, PBM_SETSTEP, 2, 0); 
            //设置背景色 
            ::SendMessage(hWndProcess, PBM_SETBKCOLOR, 0, RGB(0,0,0xff)); 
            //设置进度条颜色 
            ::SendMessage(hWndProcess, PBM_SETBARCOLOR, 0, RGB(0xff,0,0)); 
 
        } 
        break; 
    case WM_COMMAND: 
        { 
            switch(LOWORD(wParam)) 
            { 
            case IDOK: 
                { 
                    //增加进度值, 增加的数值为前面设置的步长值 
                    ::SendDlgItemMessage(hwndDlg, IDC_PROGRESS1, PBM_STEPIT, 0, 0); 
                } 
                break; 
            case IDCANCEL: 
                ::EndDialog(hwndDlg, IDCANCEL); 
                return 0; 
            } 
        } 
        break; 
    } 
    return 0; 

 
int WINAPI WinMain( 
    __in  HINSTANCE hInstance, 
    __in  HINSTANCE hPrevInstance, 
    __in  LPSTR lpCmdLine, 
    __in  int nCmdShow 
    ) 

    ::DialogBoxParam(hInstance, (LPCTSTR)IDD_MAIN, NULL, DialogProc, NULL); 
 
    return 0; 
}

希望本文所述对大家的VC++程序设计有所帮助。


« 
» 
快速导航

Copyright © 2016 phpStudy | 豫ICP备2021030365号-3