对话框在现实的时候,如果按下enter会关闭,是因为enter默认发送了oncancel()消息给窗口,所以会执行CDialog::OnCancel,关闭对话框,这里有两种办法解决:
1:在PreTranslateMsg()里面把enter按键截获,这种不是正常的消息流程。所以最好用第二种办法。
2:就是增加消息处理函数OnOK和OnCancel,在里面直接返回,不要执行CDialog::OnOk或者CDialog::OnCancel。这种做法比较符合windows的消息机制流程。
对话框在现实的时候,如果按下enter会关闭,是因为enter默认发送了oncancel()消息给窗口,所以会执行CDialog::OnCancel,关闭对话框,这里有两种办法解决:
1:在PreTranslateMsg()里面把enter按键截获,这种不是正常的消息流程。所以最好用第二种办法。
2:就是增加消息处理函数OnOK和OnCancel,在里面直接返回,不要执行CDialog::OnOk或者CDialog::OnCancel。这种做法比较符合windows的消息机制流程。