如何使用空项目启动 MFC?

use*_*261 5 c c++ mfc

我正在学习 MFC。

现在我想开发一个简单的GUI应用程序,但是有一个问题

首先,如何创建空的 MFC 项目?Visual Studio 2013 总是给我一个示例项目,但我不想要它。我不想理解示例代码并对其进行编辑。我只想从hello world自己写一个简单的项目代码。

二、从空的mfc项目启动和WIN32应用模式启动有区别吗?

第三,我想开发一个自定义UI设计的程序,那么我不能使用“基于对话框的模式”吗?有人说我“在基于对话框的模式下,很难使用自定义设计”。真的吗?

The*_*ish 2

完全空的 MFC 项目有些毫无意义,因为您需要添加回示例代码已有的内容。例如,每个 MFC 程序都有一个 CWinApp 派生类,通常还有某种主窗口类(无论是对话框还是框架窗口)。当您已经有了可以编辑的东西时,开始学习框架可能会更容易,而不是尝试弄清楚如何从头开始将基本部分组合在一起。但无论哪种方式,您可能都希望找到一本好书来帮助解释该框架。

Win32 应用程序设置仅使用原始 Windows API(这是 MFC 构建和包装的基础)的基本示例代码。WinAPI 非常类似于 C。开箱即用,没有任何课程或类似的东西可以让生活变得更轻松。您必须学习如何自己制作它们...或者使用 MFC 之类的东西,因为这正是它的本质 - 类包装 Windows API 以使其更容易。

“定制UI设计”是一个相当模糊的短语。您到底想定制什么?布局?颜色?动画?基本控制逻辑?基于对话框的程序是一种比较简单的程序,所以如果没有别的办法,它至少更容易开始学习。但就定制而言,它实际上只取决于您的目标。

但实际上,当您想要自定义很多内容时,MFC 或 Windows API 本身并不是那么好。有时,您最终不得不接管并重新实现更多的功能,而您希望仅自定义一小部分功能。此外,即使坚持库存控制和行为,仍有很多需要改进的地方,例如良好的尺寸/布局框架。MFC 是很久以前创建的,在某些方面还没有得到增强,无法跟上当今人们需要/想要/期望从 GUI 框架获得的功能。

就我个人而言,我建议研究其他更新且功能更丰富的 GUI 框架。在 C++ 世界中,Qt 是著名的。在 C# 中,WPF 有很多优点。对于我自己来说,尽管我在工作中整天使用 MFC,但我通常使用 C#/WPF 来完成我的个人项目。