
这行之前是你自己的逗世处理函数,
这行调用基类的OnOK函数,基类中就执行了EndDialog(IDOK),作用是关闭对话框,亮裂并把IDOK作为对话框的返回值,返回给调用对话框(DoModal)的地方
你的需求,应该是需虚汪败要一个进度条类的控件实现最好。创建一个对话框,对话框放置一个Process控件(进度条)陵宽,
对话框非模态创建,任务进行中,发送进度百分比,当任务执行完毕后,关闭对话框。
当然,如果不需要进度显示,直接一个非差颤模态对话框,里面一个静态文本提示就可以了。
1. EndDialog()是CDialog中的一个成员函数,OnOK其实最后也是调用了它,而在EndDialog()这个函数中,MFC又调友族用了WIN API中的全局函数::EndDialog(m_hWnd, ONOK)。2. 其实这桥察个比较生僻的地方。我们知道MFC是封装了WINDOWS API的,其实CDialog这个类并没有能力自己去创建一个窗口,而必须通过调用API去创建然后把它的句柄保存起来,以备管理。从而敏告茄当一个CDialog所管理的窗口被关闭之后,CDialog本身依然存在,只不过它引用的句柄已经失效了。而我们知道DoModal这个函数是用来创建并关联窗口的,所以你说的情况不会存在。
欢迎分享,转载请注明来源:内存溢出
微信扫一扫
支付宝扫一扫
评论列表(0条)