MFC中Spin Control控件使用,同时数据在Edit Control中显示

实现mfc spin control 上下滚动,只需捕捉spin control  UDN_DELTAPOD 消息,如下:

 OnDeltaposSpin1(NMHDR *pNMHDR, LRESULT *pResult)
{
 LPNMUPDOWN pNMUpDown = reinterpret_cast(pNMHDR);
 // TODO:
 在此添加控件通知处理程序代码

   if(pNMUpDown-> iDelta == 1) // 如果此值为1 , 说明点击了Spin的往下箭头 
   {  

          //增加编辑框中的数字值 
      } 
   else if(pNMUpDown-> iDelta == -1) //
 如果此值为-1 , 说明点击了Spin的往上箭头 
      { 
          /
减少编辑框中的数字值 
      }

}

 

实现具体步骤如下:

1、首先新建一个Dialog窗口,在新建窗口中右击鼠标,添加类,如:CKoreaHc

2、然后通过工具箱把Spin Control控件、Edit Control控件分别拖拽到Dialog窗口中,双击Spin Control控件即可在CKoreaHc.cpp中生成如下几段相应代码。

1

BEGIN_MESSAGE_MAP(CKoreaHcCDialog)

    ON_NOTIFY(UDN_DELTAPOSIDC_SPIN1, &CKoreaHc::OnDeltaposSpin1)

END_MESSAGE_MAP()

 

2

void CKoreaHc::OnDeltaposSpin1(NMHDR *pNMHDRLRESULT *pResult)

{

    LPNMUPDOWN pNMUpDown = reinterpret_cast<<SPAN style="COLOR: black">LPNMUPDOWN>(pNMHDR);

    // TODO: 在此添加控件通知处理程序代码

    *pResult = 0;

}

3、在CKoreaHc.hCKoreaHc.cpp中分别添加相应程序处理代码

1 //CKoreaHc.h中对byTxOutsideTempData进行定义声明

BYTE m_byTxOutsideTempData;

 

2//CKoreaHc.cpp

CKoreaHc::CKoreaHc(CWndpParent )

    : CDialog(CKoreaHc::IDDpParent)

{

    m_byTxOutsideTempData = 0x7E;   //发送数据

}

3//CKoreaHc.cpp

void CKoreaHc::OnDeltaposSpin1(NMHDR *pNMHDRLRESULT *pResult)

{

    LPNMUPDOWN pNMUpDown = reinterpret_cast<<SPAN style="COLOR: black">LPNMUPDOWN>(pNMHDR);

    // TODO: 在此添加控件通知处理程序代码

    if(pNMUpDown->iDelta == -1)  // 如果此值为-1 , 说明点击了Spin的往上箭头

    {

        m_byTxOutsideTempData++;

    }

    else if(pNMUpDown->iDelta == 1)  // 如果此值为, 说明点击了Spin的往下箭头

    {

        m_byTxOutsideTempData--;

    }

    CString ss;

    ss.Format(_T("  %d "), (m_byTxOutsideTempData & 0x 7F)-40);

    GetDlgItem(IDC_EDIT_OUTTEMP_HC)->SetWindowText(ss);   //EDIT控件显示数据

    *pResult = 0;

}

 

  • 0
    点赞
  • 1
    收藏
    觉得还不错? 一键收藏
  • 1
    评论

“相关推荐”对你有帮助么?

  • 非常没帮助
  • 没帮助
  • 一般
  • 有帮助
  • 非常有帮助
提交
评论 1
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值