MFC控件的使用方法(十二(旋转按钮控件),十三(进度条控件))

十二、旋转按钮控件(Spin Control)

作用:旋转按钮控件是一对相反的箭头按钮,点击上下箭头可调节数值,一般旋转按钮控件与其他控件控件一起使用,另一个控件显示的值被称为它的当前位置。一个旋转控件通常是与一个相伴的控件一起使用的,称为“伙伴窗口”。
而他默认的方向是向上减小,向下增大,范围为100。
消息映射函数:
NM_OUTOFMEMORY 指示控件由于内存不足而未完成某些工作
NM_RELEASWDCAPTURE 将鼠标捕获释放通知父级,发送此消息。
MN_THEMECHANGE 指示主题已经更改
NM_DELTAPOS 指示控件的位置即将更改
使用方法:
1、设置Spin Control 控件的Auto Buddy属性为TRUE这样他就与他ID的前一个控件组合为一个伙伴控件(一般伙伴控件是EDIT控件)。
2、初始化控件范围(一般是通过建立控件型变量,或者使用费GetDlgItem()函数获得控件句柄)

CSpinButtonCtrl *pSpin;
pSpin = (CSpinButtonCtrl*)GetDlgItem(IDC_SPIN_DEC);
	pSpin->SetRange(0,100);//设置范围
	pSpin->SetBase(10);//设置进制

十三、进度条控件(Porgress Control)
作用:一般是显示一个进程或者任务的执行过程,一般都是作为显示使用的。、
消息映射函数:
NM_CUSTOMDROW 将自定义绘图操作通知父级
NM_OUTOFMEMORY 指示控件由于内存不足而未完成某些工作
NM_RELEASWDCAPTURE 将鼠标捕获释放通知父级,发送此消息。
MN_THEMECHANGE 指示主题已经更改
使用方法:
1、创建精度条控件的控件型变量或者使用GetDlgItem()函数获取控件的句柄。

CProgressCtrl m_progress;

2、通过控件型变量设置精度条的范围

m_progress.SetRange(0,100);

3、通过GetRange()函数获取进度条得最大值和最小值,使用SetPos()函数设置进度条得进度。

void C进度条Dlg::OnTimer(UINT_PTR nIDEvent)
{
	// TODO:  在此添加消息处理程序代码和/或调用默认值r
	int nPos, nMin, nMax;
	m_progress.GetRange(nMin,nMax); //获取进度条的最大值和最小值
	nPos = m_progress.GetPos(); //获取进度条当前的位置
	nPos++;
	if (nPos>=nMax)
	{
		KillTimer(1);
		nPos = 0;
		GetDlgItem(IDC_START)->EnableWindow(true); //设置start按钮得的状态,使其激活
	}
	m_progress.SetPos(nPos); //设置进度条的位置


	CDialogEx::OnTimer(nIDEvent);
}
  • 1
    点赞
  • 6
    收藏
    觉得还不错? 一键收藏
  • 0
    评论
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值