我有个spin绑定了edit,我想在点击spin的上下箭头时,更新edit的值;但是显示更新后edit中只有数字。我想在数字后面加上其他字符串,便重写了OnDeltaposSpinUp函数;但是edit的值还是只有数字,debug跟踪已经重新给edit设置了值,不知道为什么没有在edit中显示出来。
麻烦帮忙分析一下。
代码如下:
m_spinUp为spin对象,m_editUp为edit对象。
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
|
void
CMyDlg::OnDeltaposSpinUp(NMHDR *pNMHDR,
LRESULT
*pResult)
{
LPNMUPDOWN pNMUpDown =
reinterpret_cast
<LPNMUPDOWN>(pNMHDR);
// TODO: ここにコントロール通知ハンドラ コードを追加します。
int
lower, upper;
m_spinUp.GetRange(lower, upper);
if
(pNMUpDown->iDelta == 1)
// up
{
if
(pNMUpDown->iPos < upper)
{
pNMUpDown->iPos++;
}
}
else
{
// down
if
(pNMUpDown->iPos > lower)
{
pNMUpDown->iPos--;
}
}
CString sPos;
sPos.Format(_T(
"%d"
), pNMUpDown->iPos);
sPos += _T(
" mm"
);
m_editUp.SetWindowTextW(sPos);
*pResult = 0;
}
|