我的对话框中有一个CEdit字段,我已经实现EN_KILLFOCUS
,所以当用户输入无效数据时,当焦点离开这个字段并且焦点返回时显示一条警告消息到CEdit字段,以便用户可以输入正确的数据。如果用户输入无效数据并单击CANCEL按钮,则还会显示一条警告消息,这是不希望的,因为用户无论如何都试图取消他的动作。当用户点击CANCEL按钮时,我尝试过实现PostQuitMessage,但是这会关闭整个应用程序。当用户点击CANCEL按钮时,我只想关闭我的对话框。点击“取消”按钮后,是否有任何方法可以立即关闭对话框。这是我试过的代码。关闭一个对话框,点击取消按钮忽略EN_KILLFOCUS
void CMARPropWnd::OnParentNotify(UINT message, LPARAM lParam)
{
CCDialog::OnParentNotify(message, lParam);
// TODO: Add your message handler code here
CPoint ptButtonDown(LOWORD(lParam),HIWORD(lParam));
if ((message == WM_LBUTTONDOWN) && (ChildWindowFromPoint(ptButtonDown) == GetDlgItem(eMARPropWndCancelBtnId)))
{
PostQuitMessage(0);
}
}
Vaidation已在不同的项目中实施。我不能做任何事情:)真的很感激,如果有一些解决方案 –
您是否尝试发布WM_CLOSE消息? – rrirower