MFC 编辑框 限制数字输入
2014-03-17 18:20
706 查看
重写虚函数PreTranslateMessage。
BOOL CClassDlg::PreTranslateMessage(MSG* pMsg)
{
// TODO: 在此添加专用代码和/或调用基类
//屏蔽小数输入框输入其他字符
if(pMsg->message == WM_CHAR)
{
//IDC_UPPER_LIMIT和IDC_LOWER_LIMIT为编辑框ID
CEdit* pEdit1 = (CEdit*)GetDlgItem(IDC_UPPER_LIMIT);
CEdit* pEdit2 = (CEdit*)GetDlgItem(IDC_LOWER_LIMIT);
//pMsg->hwnd此时为接收WM_CHAR的窗口句柄,即看当前输入焦点是否为上面两个
//编辑框
if(pMsg->hwnd == pEdit1->m_hWnd || pMsg->hwnd == pEdit2->m_hWnd)
{
//如果是数字或小数点'.'或退格键的ascii,则按默认的方式处理,
//此时会输入到编辑框
if((pMsg->wParam >= '0' && pMsg->wParam <= '9') ||
pMsg->wParam == '\b' )
{
return CDialogEx::PreTranslateMessage(pMsg);
}
else
{
//如果是其他的屏蔽字符,则不处理,直接返回,就不会输入到编辑框
return TRUE;
}
}
}
return CDialogEx::PreTranslateMessage(pMsg);
}
BOOL CClassDlg::PreTranslateMessage(MSG* pMsg)
{
// TODO: 在此添加专用代码和/或调用基类
//屏蔽小数输入框输入其他字符
if(pMsg->message == WM_CHAR)
{
//IDC_UPPER_LIMIT和IDC_LOWER_LIMIT为编辑框ID
CEdit* pEdit1 = (CEdit*)GetDlgItem(IDC_UPPER_LIMIT);
CEdit* pEdit2 = (CEdit*)GetDlgItem(IDC_LOWER_LIMIT);
//pMsg->hwnd此时为接收WM_CHAR的窗口句柄,即看当前输入焦点是否为上面两个
//编辑框
if(pMsg->hwnd == pEdit1->m_hWnd || pMsg->hwnd == pEdit2->m_hWnd)
{
//如果是数字或小数点'.'或退格键的ascii,则按默认的方式处理,
//此时会输入到编辑框
if((pMsg->wParam >= '0' && pMsg->wParam <= '9') ||
pMsg->wParam == '\b' )
{
return CDialogEx::PreTranslateMessage(pMsg);
}
else
{
//如果是其他的屏蔽字符,则不处理,直接返回,就不会输入到编辑框
return TRUE;
}
}
}
return CDialogEx::PreTranslateMessage(pMsg);
}
相关文章推荐
- MFC中 限制只能输入数字的编辑框
- MFC编辑框“请输入一个整数”,数字后面自动跟了一个0
- mfc怎么把编辑框内的输入的数字存入int 2,如何把数字输出到编辑框内
- MFC实现Edit输入限制(只允许输入数字,负号和小数点)
- MFC限制编辑框只能输入数字
- MFC实现Edit输入限制(只允许输入数字,负号和小数点)
- MFC中编辑框数字限制范围
- MFC实现Edit输入限制(只允许输入数字,负号和小数点)
- MFC学习笔记 — 限制示例编辑框输入字符长度
- MFC实现Edit输入限制(只允许输入数字,负号和小数点)
- MFC编辑框限制只能输入数字
- MFC实现Edit输入限制(只允许输入数字,小数点)
- mfc现实edit控件输入限制(只能输入数字和小数点)
- 限制只能输入英文和数字的半角
- DevExpress GridView限制列只允许输入数字
- 限制 Text Field 输入的内容类型:只允许输入数字
- JS限制用户只能输入数字
- 定制文本框可随便输入字符串或数字并限制长度
- UItextfiled限制输入数字
- c# 文本框限制输入仅为数字,小数点,退格键