• MFC 进度条控件


    1.进度条

            主要用来进行数据读写、文件拷贝和磁盘格式等操作时的工作进度提示情况,如安装程序等,伴随工作进度的进展,进度条的矩形区域从左到右利用当前活动窗口标题条的颜色来不断填充。 

    2.进度条控制在MFC类库中的封装类为CProgressCtrl,通常仅作为输出类控制,所以其操作主要是设置进度条的范围和当前位置,并不断地更新当前位置。进度条的范围用来表示整个操作过程的时间长度,当前位置表示完成情况的当前时刻。

    SetRange()函数用来设置范围,初始范围为0-100,

    SetPos()函数用来设置当前位置,初始值为0,

    SetStep()函数用来设置步长,初始步长为10,

    StepIt()函数用来按照当前步长更新位置,

    OffsetPos()函数用来直接将当前位置移动一段距离。如果范围或位置发生变化,那么进度条将自动重绘进度区域来及时反映当前工作的进展情况。 
    3.实例

        1)简单用法(这里我们是在控件上定义了一个类型为CProgressCtrl的m_Progress的成员变量,但是我在vc里面发现我定义了以后调试程序程序跑不了,我们可以换个办法,

    ((CProgressCtrl*)GetDlgItem(IDC_PROGRESS1))->ShowWindow(true);

    首先用GetDlgItem得到控件的句柄,然后强制类型转换,然后访问对应的成员函数.

    )

    m_Progress.SetRange(1,100); 
    for(int i=0;i<100;i++) 

    m_Progress.StepIt(); 
    Sleep(10); 

        2)关于接受时进度条的应用:

    DWORD dwSize = recv()//先接收文件的大小;

    m_ProgressCtrl.SetRange32(0, nSize); //设置进度条的范围

    DWORD dwRecv = 0;

    while(dwRecv < dwSize)

    {

    dwRecv += recv(); //接收文件

    m_ProgressCtrl.SetPos(dwRecv); //设置进度条的位置

    }

  • 相关阅读:
    Oracle中快速查找锁与锁等待
    Oracle查看、修改连接数
    内置数据类型
    代码片段一
    设计模式学习四:依赖倒置原则
    队列
    设计模式学习六:代理模式
    linux 自学系列:一直kill掉多个进程
    设计模式学习五:装饰器模式
    通过__metaclass__为类动态增加方法实例
  • 原文地址:https://www.cnblogs.com/color-my-life/p/3218782.html
Copyright © 2020-2023  润新知