zoukankan      html  css  js  c++  java
  • MFC学习笔记HellowWorld

    VS2008->新建->vsual c++->常规->空项目

    添加个头文件,代码如下

    class CMyApp:public CWinApp
    {
    public:
    	virtual BOOL InitInstance();
    };
    class CMyFrame:public CFrameWnd
    {
    public:
    CMyFrame();
    protected:
    	afx_msg void OnLButtonDown(UINT NfLAGS,CPoint point);
    	afx_msg void OnPaint();
    	DECLARE_MESSAGE_MAP()
    };



    添加个源文件,代码如下

    #include <afxwin.h>
    #include "MyApp.h"
    
    CMyApp theApp;
    
    BOOL CMyApp::InitInstance()
    {
    	m_pMainWnd = new CMyFrame();
    	m_pMainWnd->ShowWindow(m_nCmdShow);
    	m_pMainWnd->UpdateWindow();
    	return true;
    }
    
    BEGIN_MESSAGE_MAP(CMyFrame,CFrameWnd)
    	ON_WM_LBUTTONDOWN()
    	ON_WM_PAINT()
    END_MESSAGE_MAP()
    
    CMyFrame::CMyFrame()
    {
    	Create(NULL,"MYAPP Application");
    }
    void CMyFrame::OnLButtonDown(UINT nFlags,CPoint point)
    {
    	TRACE("Entering MyApp - %lx,%d,%d\n",(long)nFlags,point.x,point.y);
    }
    void CMyFrame::OnPaint()
    {
    	CPaintDC dc(this);
    	dc.TextOutA(0,0,"Hello,world");
    }

    项目-》属性-》配置属性-》常规-》项目默认值-》MFC的使用-》在共享 DLL 中使用 MFC
    同样在配置属性中-》连接器-》高级-》入口点-》WinMainCRTStartup

    然后项目可正常运行

    下面挑一部分内容解释一下这个程序

    程序运行先构造一个CWinApp派生出来的类的对象(MFC框架决定的)
    就是这个对象:CMyApp theApp;

    MFC内部有一个WinMain函数
    这个函数是程序的入口点,函数执行过程中发现了CMyApp 的对象,即执行它的InitInstance函数
    此函数负责主窗口的构造和显示工作

    我们可以看到在InitInstance程序中创建了一个继承自CFrameWnd的CMyFrame类
    这就是代表窗口的类

    OnLButtonDown是鼠标左键按下的事件
    此处事件做的工作是在调试窗口输出鼠标的坐标
    OnPaint是窗口的重绘事件

    就解释到这里

  • 相关阅读:
    01:求平均年龄
    09:与圆相关的计算
    08:温度表达转化
    07:计算多项式的值
    06:甲流疫情死亡率
    05:计算分数的浮点数值
    04:带余除法
    03:计算(a+b)/c的值
    02:计算(a+b)*c的值
    01:A+B问题
  • 原文地址:https://www.cnblogs.com/liulun/p/1567320.html
Copyright © 2011-2022 走看看