获得MFC DIalog的原因

时间:2013-09-20 14:16:38

标签: winapi mfc

System.Windows.Forms.CloseReason的{​​{1}}的MFC等价物是什么?

如何在MFC CDialog中捕获FormClosing个事件?

2 个答案:

答案 0 :(得分:1)

关闭对话框之后无法区分关闭对话框的原因。 当我查看CloseReasons列表时,大多数原因会创建不同的消息(如shutdown)。我看到的唯一方法是为对您很重要的事件/情境实现消息处理程序。

注意:某些CloseReasons对MFC应用程序中的模式对话框没有意义(如FormOwnerClosing)......

答案 1 :(得分:0)

CDialog :: DoModal返回一个值,具体取决于它的关闭方式(可能是IDOK,IDCANCEL或其他值 - 请参阅此参考:http://msdn.microsoft.com/en-us/library/619z63f5%28v=vs.90%29.aspx)。

您可以使用对话框中的各种消息来判断它何时关闭 - OnCancel(http://msdn.microsoft.com/en-us/library/kw3wtttf%28v=vs.90%29.aspx)或OnOK(http://msdn.microsoft.com/en-us/library/66b3y2ab%28v=vs.90%29.aspx)是一些更有趣的消息。