在MFC中的OnInitDialog函数之后是否有任何函数调用?

Sur*_*uri 7 c++ windows winapi mfc dialog

我想在MFC中创建一个对话框后创建一个线程.是否有Windows提供的功能,并在之后自动调用,OnInitDialog以便我可以在其中创建我的线程?

Cod*_*ray 16

您只需在OnInitDialog函数中创建线程即可.没有理由通过去寻找不同的函数或者将初始化代码分成两部分来使事情过于复杂.(也没有任何此类功能,因为没有相应的Windows消息被发送.)

如果要创建线程之前在屏幕上显示对话框,可以使用该ShowWindow功能手动显示它.例如:

ShowWindow(SW_SHOW);
RedrawWindow();
Run Code Online (Sandbox Code Playgroud)

另请参阅Raymond Chen的这篇文章:在做某事之前等待对话框显示

  • 我发现我还需要调用“CenterWindow()”,因为调用 ShowWindow 会导致左上角出现对话框。 (2认同)