自己总结一下CSpinButtonCtrl用法

本文介绍如何使用CSpinButtonCtrl控件实现以10为单位的递增递减功能。文章详细展示了设置控件属性的方法,并通过OnInitDialog函数初始化控件范围,最后通过OnVScroll函数实现具体的功能。

网上很多关于CSpinButtonCtrl控件的小数(浮点型)递增的用法。而我要做的是以10为递增量的递增递减。

 

设置属性

    选中Auto buddy项、Set buddy integer项、Arrow keys项

    将Alignment项选为Right。

 

OnInitDialog函数中初始化CSpinButtonCtrl控件:

 

BOOL CMFC_textDlg::OnInitDialog()
{
    CDialog::OnInitDialog();

    // TODO: Add extra initialization here

    m_edSpin.SetRange(0,1000);//m_edSpin为与CSpinButtonCtrl控件相关联的变量。
 
 return TRUE;  // return TRUE  unless you set the focus to a control
}

 

由于CSpinButtonCtrl控件在发生变化时会产生WM_VSCROLL消息,于是定义函数:

 

void CMFC_textDlg::OnVScroll(UINT nSBCode, UINT nPos, CScrollBar* pScrollBar)
{
 // TODO: Add your message handler code here and/or call default
 m_strEdit.Format("%d",(int)nPos+99);
 m_edSpin.GetBuddy()->SetWindowText(m_strEdit);
 CDialog::OnVScroll(nSBCode, nPos, pScrollBar);
}

 

实现了从1,以10为递增量的递增。

评论
成就一亿技术人!
拼手气红包6.0元
还能输入1000个字符
 
红包 添加红包
表情包 插入表情
 条评论被折叠 查看
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值