VC MFC 多个对话框问题

为什么多个对话框的时候 一直默认编译第二个对话框

如何设置才能让它编译运行 第一个或者第三个呢

img

没看懂,对话框还能单独一个编译???运行的是第二个对话框的原因是IDD_CALCU_DIALOG是你的主对话框啊。IDD_DIALOG1是你新加的对话框,你要给这个对话框创建对话框类,并且在程序中创建对话框类对象,并DoModal模态运行,或者Create后ShowWindow非模态运行

在resource.h里面,有每个对话框的ID,交换下即可。
如果说的是程序启动运行谁,那么找到
C你的程序类App::InitInstance()这个函数
其中有 INT_PTR nResponse = dlg.DoModal();,这里的dlg前面指定谁,就是谁先启动

  • 你可以看下这个问题的回答https://ask.csdn.net/questions/170892
  • 我还给你找了一篇非常好的博客,你可以看看是否有帮助,链接:我自己想到了解决MFC背景图片覆盖控件的方法,非常简单
  • 除此之外, 这篇博客: 【MFC】MFC消息处理和映射中的 3.2 非命令消息如何到达其处理程序 部分也许能够解决你的问题, 你可以仔细阅读以下内容或跳转源博客中阅读:
  • 与命令不同,标准 Windows 消息不通过命令目标链进行路由,但通常由 Windows 发送消息的窗口处理。 窗口可能是主框架窗口、MDI 子窗口、标准控件、对话框、视图或某些其他类型的子窗口。

    在运行时,每个窗口窗口均附加到一个窗口对象, (直接或间接从 CWnd 具有其自己的关联消息映射和处理函数的) 派生。 框架使用消息映射(对于命令)将传入消息映射到处理程序。