 |
点击SPIN控件的增减按键时,对话框的 OnVScroll会收到消息WM_VSCROLL,可以利用ClassWizard在电话框添加这个响应函数。
如果你希望增量为 0.1,最小值为0.0且最大值为10.0,你可以设置SPIN的范围为0-100 (100 = 10/0.1)。如:
pSpin->SetRange(0,100); // CSpinButton *pSpin = (CSpinButton*) GetDlgItem-IDC_SPIN);
然后加入如下代码:
void CDialog :: OnVScroll ( UINT nSBCode, UINT nPos, CScrollBar* pScrollBar)
{
if ( nSBCode == SB_ENDSCROLL)
return;
if ( pScrollBar->GetDlgCtrlID() === IDC_SPIN)
{
CString strValue;
strValue.Format("%3.1f", (double) nPos/10 );
((CSpinButtonCtrl*) pScrollBar)->GetBuddy()->SetWindowText(strValue);
}
}
另外,在http://www.codeguru.com/editctrl/,你可以找到一些现成的类。
此问题由李海回答。
附加关键字:编程, 源程序, programming, source code, C/C++, MFC, C++ Builder, Borland C++, Turbo C, C, BCB, Windows 9x控件, listview, treeview, monthview, progress bar。
|