控件使用--CSpinButtonCtrl

基本操作

CSpinButtonCtrl需要一个伙伴窗口才可以完成功能。

伙伴窗口一般为编辑控件

在dialog上加 spin控件, edit控件。

spine控件的属性 Set buddy integer要选择,我试了很长时间不起作用就是因为这个没有选择

然后代码为:

 m_spin1.SetBuddy(GetDlgItem(IDC_EDIT1));  //设置伙伴窗口
 m_spin1.SetRange(0, 255);  //设置min~max
 m_spin1.SetPos(2);  //设置起始位置

 m_edit1 = 9;
 UpdateData(false);

其中:

m_spin1绑定到spin控件。 为控件类型

m_edit1绑定到edit控件。 为integer类型

消息

当改变伙伴窗体的内容时,由伙伴窗体发出EN_UPDATE消息
当改变spin值时,ON_WM_VSCROLL (纵向控件)   ON_WM_HSCROLL(横向控件)

void CDlgSpin::OnUpdateEdit1()
{

 // TODO: Add your control notification handler code here
 UpdateData();
 m_static_update.Format("%s: %s", "m_static_update", m_edit1);
 UpdateData(false);
 //AfxMessageBox(m_edit1);
}

void CDlgSpin::OnVScroll(UINT nSBCode, UINT nPos, CScrollBar* pScrollBar)
{
 // TODO: Add your message handler code here and/or call default
 int i = m_spin1.GetPos();
 CString str;
 str.Format("%d", i);
 m_static_vscroll.Format("%s: %s", "m_static_vscroll", str);
 
 UpdateData(false);
 CDialog::OnVScroll(nSBCode, nPos, pScrollBar);
}

 

你可能感兴趣的:(Integer,dialog)