CSpinButtonCtrl
2013-08-30 16:51
232 查看
CSpinButtonCtrl(暂且称为旋转按钮吧):
这种控件我想你应该看过,不解释。
当你看到上面图示的控件时,有没有想到,其实应该是这样的:
真的是这样的,不骗你,所以下面创建该控件时要分两步走:
第一步:创建编辑框:
添加变量:
CEdit m_edit;
处理创建:
m_edit.Create(WS_BORDER|WS_CHILD|WS_VISIBLE,CRect(0,220,100,260),this,3);
第二步:创建旋转框,并且绑定到编辑框
添加变量:
CSpinButtonCtrl m_spinBtnCtrl;
处理创建:
m_spinBtnCtrl.Create(WS_BORDER|WS_CHILD|WS_VISIBLE|UDS_ALIGNRIGHT|UDS_ARROWKEYS|UDS_SETBUDDYINT ,CRect(100,220,200,260),this,2);
m_spinBtnCtrl.SetBase(10);// 10
进制
m_spinBtnCtrl.SetRange(0,10);
绑定:
m_spinBtnCtrl.SetBuddy(&m_edit);
设置编辑框初值:
int nPos;
nPos=m_spinBtnCtrl.GetPos();
CString strPos;
strPos.Format("%d",nPos);
((CWnd*)GetDlgItem(3))->SetWindowText(strPos);
处理消息:
就像以前所说的那样,要处理WM_VSCROLL消息:
void CScrollBarView::OnVScroll(UINT nSBCode, UINT nPos, CScrollBar* pScrollBar)
{
// TODO: 在此添加消息处理程序代码和/或调用默认
if (pScrollBar->m_hWnd==m_spinBtnCtrl.m_hWnd)
{
//MessageBox("m_spinBtnCtrl click!");
int nPos;
nPos=m_spinBtnCtrl.GetPos();
CClientDC dc(this);
CString strPos;
strPos.Format("Current value=%d",nPos);
dc.TextOut(100,220,strPos,strlen(strPos));
}
CView::OnVScroll(nSBCode, nPos, pScrollBar);
}
如此简单,是也不是,我越来越喜欢MFC了。
这种控件我想你应该看过,不解释。
当你看到上面图示的控件时,有没有想到,其实应该是这样的:
真的是这样的,不骗你,所以下面创建该控件时要分两步走:
第一步:创建编辑框:
添加变量:
CEdit m_edit;
处理创建:
m_edit.Create(WS_BORDER|WS_CHILD|WS_VISIBLE,CRect(0,220,100,260),this,3);
第二步:创建旋转框,并且绑定到编辑框
添加变量:
CSpinButtonCtrl m_spinBtnCtrl;
处理创建:
m_spinBtnCtrl.Create(WS_BORDER|WS_CHILD|WS_VISIBLE|UDS_ALIGNRIGHT|UDS_ARROWKEYS|UDS_SETBUDDYINT ,CRect(100,220,200,260),this,2);
m_spinBtnCtrl.SetBase(10);// 10
进制
m_spinBtnCtrl.SetRange(0,10);
绑定:
m_spinBtnCtrl.SetBuddy(&m_edit);
设置编辑框初值:
int nPos;
nPos=m_spinBtnCtrl.GetPos();
CString strPos;
strPos.Format("%d",nPos);
((CWnd*)GetDlgItem(3))->SetWindowText(strPos);
处理消息:
就像以前所说的那样,要处理WM_VSCROLL消息:
void CScrollBarView::OnVScroll(UINT nSBCode, UINT nPos, CScrollBar* pScrollBar)
{
// TODO: 在此添加消息处理程序代码和/或调用默认
if (pScrollBar->m_hWnd==m_spinBtnCtrl.m_hWnd)
{
//MessageBox("m_spinBtnCtrl click!");
int nPos;
nPos=m_spinBtnCtrl.GetPos();
CClientDC dc(this);
CString strPos;
strPos.Format("Current value=%d",nPos);
dc.TextOut(100,220,strPos,strlen(strPos));
}
CView::OnVScroll(nSBCode, nPos, pScrollBar);
}
如此简单,是也不是,我越来越喜欢MFC了。
相关文章推荐
- CSpinButtonCtrl 增大减小控件
- Spin(微调)控件(CSpinButtonCtrl)
- CSpinButtonCtrl用法
- CSpinButtonCtrl使用说明
- 猎豹MFC--数值调节按钮CSpinButtonCtrl
- 在VC中CSpinButtonCtrl用法,整理下来
- MFC NumericUpDown Spin控件 CSpinButtonCtrl
- CSpinButtonCtrl(SPIN控件)用法
- 关于MFC中CSpinButtonCtrl控件
- 如何让CSpinButtonCtrl和CEdit关联起来?
- MFC学习笔记_关于CSpinButtonCtrl
- CSpinButtonCtrl使用说明
- CSpinButtonCtrl的使用
- CSpinButtonCtrl控件处理小数的问题
- CSpinButtonCtrl::GetPos()和GetPos32( )两个函数的用法
- CSpinButtonCtrl使用说明
- Windows Mobile学习笔记_关于CSpinButtonCtrl
- CSpinButtonCtrl数字调节控件
- CSpinButtonCtrl的弱智问题
- CSpinButtonCtrl用法