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是窗口的重绘事件

    就解释到这里

  • 相关阅读:
    log4j的使用
    转:http与https
    转:归一化与正则化
    转:python 的开源库
    转:openTSDB 2.0 安装
    hadoop 2.2.0编译安装及打包
    查看磁盘信息
    HBase Region的flush过程
    HBase96的RPC
    阐述二维码的原理以及使用google api和PHP QR Code来生成二维码
  • 原文地址:https://www.cnblogs.com/liulun/p/1567320.html
Copyright © 2011-2022 走看看