MFC学习笔记一,HelloMFC

//--------学习笔记搬家------

第一个MFC程序HelloMFC

1.使用VS2013新建Win32项目,项目名称HelloMFC。

2.添加项,添加.h文件,文件名HelloMFC.h。

3.在HelloMFC.h文件中添加以下代码:

 1 //HelloMFC.h
 2 
 3 class CMyApp:public CWinApp
 4 {
 5 public:
 6     virtual BOOL InitInstance();
 7 };
 8 
 9 class CMainWindow :public CFrameWnd
10 {
11 public:
12     CMainWindow();
13 protected:
14     afx_msg void OnPaint();
15     DECLARE_MESSAGE_MAP()
16 };

注:此时class CMyApp:public CWinApp 报警,原因需在.cpp文件中加入包含头文件。

4.添加项.cpp,文件名HelloMFC.cpp,文件中添加以下代码:

 1 #include <afxwin.h>
 2 #include"HelloMFC.h"
 3 
 4 CMyApp myApp;
 5 BOOL CMyApp::InitInstance()
 6 {
 7     m_pMainWnd = new CMainWindow;
 8     m_pMainWnd->ShowWindow(m_nCmdShow);
 9     m_pMainWnd->UpdateWindow();
10     return TRUE;
11 }
12 
13 BEGIN_MESSAGE_MAP(CMainWindow,CFrameWnd)
14     ON_WM_PAINT()
15 END_MESSAGE_MAP()
16 
17 CMainWindow::CMainWindow()
18 {
19     Create(NULL,_T("FirstMFC"));
20 }
21 
22 void CMainWindow::OnPaint()
23 {
24     CPaintDC dc(this);
25     CRect rect;
26     GetClientRect(&rect);
27     dc.DrawText(_T("Hello,MFC!"), -1, &rect, DT_SINGLELINE | DT_CENTER | DT_VCENTER);
28 }

注:第3步报警处待在HelloMFC.cpp文件中添加#include <afxwin.h>解除报警。

编译运行会提示:Building MFC application with /MD[d] (CRT dll version) requires MFC shared dll version. Please #define _AFXDLL or do not use /MD[d]

处理办法:在项目属性/常规/MFC的使用,选择在共享DLL中使用MFC

http://www.cnblogs.com/haihai187/p/4392096.html

效果图:

//心德

1.窗口的功能全部有效,可以移动它,调整其尺寸大小,最大化,最小化,关闭,窗口缩放时,窗口中心始终重新绘制文字Hello,MFC。

2.程序类名为CMyApp,实例化:CMyapp myApp;

3.类声明在HelloMFC.h中:

class CMyApp:public CWinApp
{
public:
    virtual BOOL InitInstance();
};

 

posted @ 2015-09-19 17:15  haihai187  阅读(345)  评论(0编辑  收藏  举报