2

我有自己的类(CMyEdit)从CEdit自己的验证过程中继承。

我挂钩事件ON_CHARON_UPDATE验证用户输入。

如果输入有效,CMyEdit::isOk则属性切换为trueCMyEdit在每次更改 EditBox 内容期间确认有效性。

对话可以通过 确认有效性CMyEdit::isOk

我已经覆盖CEdit::SetWindowText()

inline void CMyEdit::SetWindowText(LPCTSTR lsText)
{
    CEdit::SetWindowText(lsText);
    Validate(); //set isOk true or false
}

但是如果 dialog 使用DDX_Text,则没有方法正在运行(也没有EN_CHANGE,也没有SetWindowText).

同样的问题是,当用户从剪贴板 ( WM_PASTE) 中输入值时。

如何挂钩编辑框内容的这种变化?

4

0 回答 0