我在MDI的一个FormView类里动态生成了一个CEdit的编辑框,请问如何控制它的文本框中只能输入一个字符,而且这个字符只能是1,2," ",三个中的一个?这个问题很急,我在线等待各位大侠的回答,分不够在加.
我是这样做的
定义一个CMyEdit类
重载函数哦OnChar()
void CMyEdit::OnChar(UINT nChar, UINT nRepCnt, UINT nFlags)
{
CString str;
GetWindowText(str);
if(str.GetLength() > 0)
return;
else if( (nChar != 1) && (nChar != 2) & (nChar != ) )
return;
CEdit::OnChar(nChar, nRepCnt, nFlags);
}
在FormView头文件里面申明
CRect m_EditRect;
CMyEdit m_TheEdit;
CPP文件,重载WM_LBUTTONDBCLICK消息
void CMyEditView::OnLButtonDblClk(UINT nFlags, CPoint point)
{
if(m_TheEdit.m_hWnd)
m_TheEdit.DestroyWindow();
m_TheEdit.Create(ES_CENTER | ES_MULTILINE,m_EditRect,this,ID_MYEDIT);
m_TheEdit.ShowWindow(SW_NORMAL);
CFormView::OnLButtonDblClk(nFlags, point);
}