如果想让编辑框控件只支持数字的输入,只需改一下控件的属性就可以了:在VC6.0中,右键点击控件在弹出的菜单上点击“Properties”(属性),在弹出的属性对话框中,点击Style(样式)页面,将右下角的Number(数字)选中即可。
但是这样做后,你会发现,小数点也没法输入了,也就是说只能输入整数了。那么还想输入小数点,或者还想限制其他字符的输入怎么办呢?
这就要麻烦点了:
需要从CEdit派生一个新的类,重载WM_CHAR消息,在OnChar()中添加对输入字符的判断,不是你想要的字符直接返回就可以了
例如,只能输入小数:
void CXXXEdit::OnChar(UINT nChar, UINT nRepCnt, UINT nFlags)
{
// TODO: Add your message handler code here and/or call default
if(::isdigit(nChar)||(nChar=='.'))
CEdit::OnChar(nChar, nRepCnt, nFlags);
}
点了OK就可以设定最大值和最小值了
不明白Hi我一下
然后在添加的函数中加入代码
CString strTemp;
CEdit* edit1 = ((CEdit*)(GetDlgItem(IDC_EDIT1)));
edit1->GetWindowText(strTemp);
int len = strTemp.GetLength();
for (int i = 0; i < len; i ++)
{
if (strTemp.GetAt(i) < '0' || strTemp.GetAt(i) > '9')
{
if (strTemp.GetAt(i)!= '.')
{
strTemp = strTemp.Left(i);//MessageBox("cuo");
edit1->SetWindowText(strTemp);
return;
}
}
}
想只要数字。。。
只要在编辑框的属性中,选择“数字”,英文版本就自己翻译了
其它复杂的就参考别人的吧
编辑框关联一变量,在关联变量时,对话框下面有设置限制字符长度
将编辑框关联一变量就可以了