您尚未登录。

楼主 #1 2019-12-09 10:14:45

win32prog
会员
注册时间: 2019-11-28
已发帖子: 138
积分: 138

VS2017 从零建立一个简单的 MFC 应用

2019-12-09_095957.png

1. 新建一个空项目

离线

楼主 #2 2019-12-09 10:15:37

win32prog
会员
注册时间: 2019-11-28
已发帖子: 138
积分: 138

Re: VS2017 从零建立一个简单的 MFC 应用

2019-12-09_100158.png

2. 右击 -> 新建 stdafx.h / MFCApp.cpp 等文件

离线

楼主 #3 2019-12-09 10:16:19

win32prog
会员
注册时间: 2019-11-28
已发帖子: 138
积分: 138

Re: VS2017 从零建立一个简单的 MFC 应用

2019-12-09_100248.png

3. 右击 -> 新建 stdafx.h 文件

离线

楼主 #4 2019-12-09 10:16:59

win32prog
会员
注册时间: 2019-11-28
已发帖子: 138
积分: 138

Re: VS2017 从零建立一个简单的 MFC 应用

2019-12-09_100402.png

4. 右击 -> 新建 MFCApp.cpp 文件

离线

楼主 #5 2019-12-09 10:18:03

win32prog
会员
注册时间: 2019-11-28
已发帖子: 138
积分: 138

Re: VS2017 从零建立一个简单的 MFC 应用

2019-12-09_100540.png

5. 选中 在共享 DLL 中使用 MFC

离线

楼主 #6 2019-12-09 10:20:52

win32prog
会员
注册时间: 2019-11-28
已发帖子: 138
积分: 138

Re: VS2017 从零建立一个简单的 MFC 应用

2019-12-09_100834.png

6. 预编译头: 选中创建 (/Yc)

离线

楼主 #7 2019-12-09 10:21:23

win32prog
会员
注册时间: 2019-11-28
已发帖子: 138
积分: 138

Re: VS2017 从零建立一个简单的 MFC 应用

2019-12-09_100727.png

7. 子系统选中 窗口 (/SUBSYSTEM:WINDOWS)

离线

楼主 #8 2019-12-09 10:22:21

win32prog
会员
注册时间: 2019-11-28
已发帖子: 138
积分: 138

Re: VS2017 从零建立一个简单的 MFC 应用

2019-12-09_100908.png

MFCApp.cpp 内容:

#include "stdafx.h"
#include <afxwin.h>

class FirstApp : public CWinApp
{
	virtual BOOL InitInstance()
	{
		CFrameWnd* window = new CFrameWnd();
		m_pMainWnd = window;
		window->Create(NULL, _TEXT("第一个 MFC 应用程序."));
		window->ShowWindow(m_nCmdShow);

		return TRUE;
	}
};

FirstApp theApp;

8. 编译运行成功

离线

楼主 #9 2019-12-09 10:27:07

win32prog
会员
注册时间: 2019-11-28
已发帖子: 138
积分: 138

Re: VS2017 从零建立一个简单的 MFC 应用

工程项目打包下载: MFCApp_20191209.7z

离线

#10 2019-12-09 10:30:02

晕哥
管理员
所在地: 微信 whycan_cn
注册时间: 2017-09-06
已发帖子: 9,223
积分: 9197

Re: VS2017 从零建立一个简单的 MFC 应用

太棒了,这么好的入门教程!





离线

楼主 #11 2019-12-09 11:24:01

win32prog
会员
注册时间: 2019-11-28
已发帖子: 138
积分: 138

Re: VS2017 从零建立一个简单的 MFC 应用

晕哥 说:

太棒了,这么好的入门教程!

感谢晕哥,在这里学到太多东西了。


#include "stdafx.h"
#include <afxwin.h>

class FirstFrame : public CFrameWnd
{
public:
	FirstFrame()
	{
	}

	DECLARE_MESSAGE_MAP();
	afx_msg void OnLButtonDown(UINT, CPoint)
	{
		MessageBox(_TEXT("对话框内容"), _TEXT("标题"), 0);
	}
};

BEGIN_MESSAGE_MAP(FirstFrame, CFrameWnd)
	ON_WM_LBUTTONDOWN()
END_MESSAGE_MAP()

class FirstApp : public CWinApp
{
	virtual BOOL InitInstance()
	{
		FirstFrame* window = new FirstFrame();
		m_pMainWnd = window;
		window->Create(NULL, _TEXT("第一个 MFC 应用程序."));
		window->ShowWindow(m_nCmdShow);

		return TRUE;
	}
};

FirstApp theApp;

添加一个简单的消息响应程序。

离线

楼主 #12 2019-12-09 11:30:25

win32prog
会员
注册时间: 2019-11-28
已发帖子: 138
积分: 138

Re: VS2017 从零建立一个简单的 MFC 应用

一个简单的消息响应程序:

#include "stdafx.h"
#include <afxwin.h>

class FirstFrame : public CFrameWnd
{
public:
	FirstFrame()
	{
	}

	DECLARE_MESSAGE_MAP();
	afx_msg void OnLButtonDown(UINT, CPoint)
	{
		MessageBox(_TEXT("对话框内容"), _TEXT("标题"), 0);
	}

	afx_msg void OnPaint()
	{
		CPaintDC dc(this);
		LineTo(dc, 100, 200);
		LineTo(dc, 200, 300);
		LineTo(dc, 0, 0);
	}
};

BEGIN_MESSAGE_MAP(FirstFrame, CFrameWnd)
	ON_WM_LBUTTONDOWN()
	ON_WM_PAINT()
END_MESSAGE_MAP()

class FirstApp : public CWinApp
{
	virtual BOOL InitInstance()
	{
		FirstFrame* window = new FirstFrame();
		m_pMainWnd = window;
		window->Create(NULL, _TEXT("第一个 MFC 应用程序."));
		window->ShowWindow(m_nCmdShow);

		return TRUE;
	}
};

FirstApp theApp;

2019-12-09_112940.png

离线

页脚

工信部备案:粤ICP备20025096号 Powered by FluxBB

感谢为中文互联网持续输出优质内容的各位老铁们。 QQ: 516333132, 微信(wechat): whycan_cn (哇酷网/挖坑网/填坑网) service@whycan.cn