C++ 如何在VIsual Studio中编辑Windows桌面应用程序主对话框?

C++ 如何在VIsual Studio中编辑Windows桌面应用程序主对话框?,c++,visual-studio-2019,win32gui,C++,Visual Studio 2019,Win32gui,我必须为大学班级创建一个Win32应用程序。 我在VisualStudioCommunity 2019的“创建项目”部分创建了“Windows桌面应用程序”,它已经附带了一个可以随时测试的标准对话框。问题是:我无法编辑主对话框。我可以创建另一个对话框并对其进行编辑,但在资源编辑器中无法访问主对话框。我能做什么?我在谷歌上找不到任何东西。请提供帮助。由Visual Studio中的“Windows桌面应用程序”项目模板创建的默认应用程序的主窗口不是使用对话框资源创建的。它是通过注册与窗口过程关联的

我必须为大学班级创建一个Win32应用程序。
我在VisualStudioCommunity 2019的“创建项目”部分创建了“Windows桌面应用程序”,它已经附带了一个可以随时测试的标准对话框。问题是:我无法编辑主对话框。我可以创建另一个对话框并对其进行编辑,但在资源编辑器中无法访问主对话框。我能做什么?我在谷歌上找不到任何东西。请提供帮助。

由Visual Studio中的“Windows桌面应用程序”项目模板创建的默认应用程序的主窗口不是使用对话框资源创建的。它是通过注册与窗口过程关联的窗口类创建的,这是创建桌面应用程序时的标准方法


您可以通过更改源代码而不是使用visual editor来“编辑”该窗口。

我使用的是visual Studio 2013 Enterprise,但过程与此相同: 1-在解决方案资源管理器上,单击.RC文件 2-在新窗口(资源视图)中,单击对话框中的 3-双击要编辑的对话框。。。
就是这样…

>我无法编辑主对话框。我可以创建另一个对话框并对其进行编辑,但在资源编辑器中无法访问主对话框。

是的,您可以创建它,但它没有类,不能是对象。您可以尝试创建Win32桌面应用程序,然后创建对话框。右键单击对话框时,您将发现无法添加类。

如果要使用此对话框,只能使用此函数DialogBoxW(hInstance、lpTemplate、hWndParent、lpDialogFunc)在程序中创建和显示对话框。第三个参数是父窗口的句柄,可以为NULL。第四个参数是回调函数。 所以我们测试在WinMain中调用DialogBoxW。你可以查看下面的图片。我们放弃了传统的Win32框架,将自定义窗口作为主窗口。它起作用了。


但是,应该注意,以这种形式创建的窗口是模态的,这在许多情况下都不适用。使用MFC可以更好地完成您所说的和您想做的。Win32没有封装许多像MFC这样的接口供您调用

这让我很困惑,因为在代码块中,您可以创建一个.rc文件,并在使用win32应用程序时使用它。那么,我怎样才能在外部创建一个.rc,然后将它包含在我的程序中呢?