前往小程序,Get更优阅读体验!
立即前往
首页
学习
活动
专区
工具
TVP
发布
社区首页 >专栏 >MFC进度条-转

MFC进度条-转

作者头像
全栈程序员站长
发布2022-09-07 11:08:50
3550
发布2022-09-07 11:08:50
举报
文章被收录于专栏:全栈程序员必看

大家好,又见面了,我是你们的朋友全栈君。

CProgressCtrl 控件属性

当我们在处理大程序时,常常需要耗很长时间(比如搜索内存,复制大文件),为了不让用户错误的认为系统已经死机,我们要给程序添加进度条。

CProgressCtrl 类常用成员函数

SetRange void SetRange( short nLower, short nUpper ); 为进度条控件设置范围的最小值和最大值,并重画进度条来反映新的范围,默认为0~100,若设置32位范围,用下面的函数。 -0x8fff~0x7FFF SetRange32 void SetRange32( int nLower , int nUpper ); 为进度条控件设置范围的最小值和最大值,并重画进度条来反映新的范围 GetRange void GetRange( int&nLower, int&nUpper ); 获取进度条控件范围的下限和上限 GetPos 获取进度条的当前位置 SetPos 设置进度条的当前位置,并重画进度条来反映新的位置 OffsetPos 在原位置上增加一段数值,并重画进度条来反映新的位置 SetStep 设置进度条前进的步长,返回原来步长。配合StepIt使用 在进度条上会以百分比的形式显示出来 步长/(最大值-最小值) 代码示例

void CMFCControlTestDlg::OnBnClickedBtPro() { // TODO: 在此添加控件通知处理程序代码 m_progressCtrl.SetRange32(0, 1000);//设置进度条的最小值和最大值 int nFirstStep = m_progressCtrl.SetStep(10);//设置步长,返回原来步长,默认是最大值的1%

代码语言:javascript
复制
for (int x=1; x<=10; x++)
{
	m_progressCtrl.SetPos(x*10);//设置一个位置
	int a = m_progressCtrl.StepIt();//在原位置上增加一个步长距离,配合SetStep使用,先设置步长才能使用这个
	Sleep(100);
}
m_progressCtrl.OffsetPos(400);//在原位置上增加400距离
if (m_progressCtrl.GetPos() > 1000)//获取当前位置
{
	m_progressCtrl.SetPos(0);
}

}

发布者:全栈程序员栈长,转载请注明出处:https://javaforall.cn/154244.html原文链接:https://javaforall.cn

本文参与 腾讯云自媒体同步曝光计划,分享自作者个人站点/博客。
如有侵权请联系 cloudcommunity@tencent.com 删除

本文分享自 作者个人站点/博客 前往查看

如有侵权,请联系 cloudcommunity@tencent.com 删除。

本文参与 腾讯云自媒体同步曝光计划  ,欢迎热爱写作的你一起参与!

评论
登录后参与评论
0 条评论
热度
最新
推荐阅读
领券
问题归档专栏文章快讯文章归档关键词归档开发者手册归档开发者手册 Section 归档