1,DIALOG面板中右击编辑框添加类向导;
2,消息栏中添加WM_MOUSEWHEEL消息;
3,应用,确认后,xxxDlg.cpp文件中会自动添加OnMouseWheel成员函数框架;
4,OnMouseWheel(UINTnFlags, short zDelta, CPoint pt)中zDelta就是随鼠标变化的值,但是应该变化幅度非常大,不能1步1步变,故在该函数内部先加上一段代码:
if(zDelta < 0)
m_Scale= m_Scale - 1;
else
m_Scale= m_Scale + 1;
m_Scale为对话框类的成员变量,一直记录编辑框中的值,不管怎么滑动,这个值都会记录编辑框中的值。
5,将m_Scale值显示在编辑框内,添加如下代码:
CStringstrValue;
if(m_Scale > 0) //如果是正数,则要加上“+”号
{
strValue.Format(_T("+%d"),m_Scale);
}
else
{
strValue.Format(_T("%d"),m_Scale);
}
//得到Edit控件的窗口指针
CEdit*pWndEdit = (CEdit*)GetDlgItem(IDC_EDIT2);// IDC_EDIT2为要添加控制的对话框ID
if(NULL == pWndEdit)
{
TRACE(_T("CPortraiture_DemoDlg::ShowEditValueIntNULL==pWndEdit执行错误"));
returnFALSE;
}
//显示Edit控件的内容
pWndEdit->SetWindowText(strValue);
6,完毕。