标题:MFC第一篇(HELLO WORLD) 关键字:WINDOWS消息机制 说明:本文档资料参考MFC WINDOWS 程序设计第二版 本MFC工程建立方法:新建一个WIN32的空工程,然后设置链接方式为MFC类库动态链接,然后添加头文件和源文件就可以编程 代码: Demo1.h 里面的源码 class CMyApp :public CWinApp { public: virtual BOOL InitInstance();//当声明了一个CWinApp类的时候,系统会自动调用该函数, }; //且该函数课重写 class CMainWnd :public CFrameWnd { public: }; BOOL CMyApp::InitInstance() { } void CMainWnd::OnPaint() { CPaintDC dc(this);//声明一个DC CRect rect; //定义一个矩形变量 GetClientRect(&rect);//获得一个客户区矩形大小,不含标题栏 dc.DrawText(_T("hello world"),&rect,DT_CENTER|DT_SINGLELINE|DT_VCENTER); m_pMainWnd=new CMainWnd; //调用了InitInstance后,执行生成一个窗口类然后自动 m_pMainWnd->ShowWindow(m_nCmdShow);// 调用到窗口类的构造函数 m_pMainWnd->UpdateWindow(); return TRUE; CMainWnd(); afx_msg void OnPaint(); protected: DECLARE_MESSAGE_MAP()//声明映射 }//相关API可以查阅MSDN,注意最后一个参数的前面恰好是DT,就是DrawText的缩写 CMainWnd::CMainWnd() { } Demo1.c的源码 #include //MFC的主要头文件 #include "demo1.h" CMyApp app; //声明一个应用程序 BEGIN_MESSAGE_MAP(CMainWnd,CFrameWnd) ON_WM_PAINT() Create(NULL,_T("demo1"));//创建一个标题为demo的窗口,注意后面参数可以缺省 END_MESSAGE_MAP()//窗口消息的映射机制,需要什么消息可以查阅MSDN进行扩充 由这个程序知道,一个窗口程序必须具备一个应用程序类和一个窗口类(本程序是派生于mfc的框架类)处理的消息都是窗口消息,所以映射只有一个。 学习mfc许多函数都不要记忆的,但是常用的类名以及继承方式还是需要记忆下的 前面所讲的一般都是窗口消息的循环 布置作业:1.修改对话框的大小,标题(通过Create函数可以)(修改背景后面会讲的) 2.大家查阅一下MSDN看CWND类里面的基本函数,往窗口添加一个左键单击的消息并弹出一个消息对话框,也预习下MFC的CDC类。 不懂的可以跟帖:海量分享尽在幽灵代码 本文来源:https://www.wddqw.com/doc/4df852d665ce0508763213e7.html