zoukankan      html  css  js  c++  java
  • 编写第一个MFC应用程序

    一、MFC简介

    微软基础类库(英语:Microsoft Foundation Classes,简称MFC)是一个微软公司提供的类库(class libraries),以C++类的形式封装了Windows API,并且包含一个应用程序框架,以减少应用程序开发人员的工作量,其中包含的类包含大量Windows句柄封装类和很多WIndows的内置控件和组件的封装类。

    MFC给Windows操作系统提供了面向对象的接口,支持可重用性、自包含性以及其他OPP原则,MFC通过编写类来封装窗口、对话框以及其他对象,引入某些关键的虚函数(覆盖这些函数可以改变派生类的功能)来完成。

    二、代码的编写

    新建一个Win32的空项目,建立名为mfc.h的头文件和名为mfc.cpp的源文件

    //mfc.h
    #include<afxwin.h> //mfc头文件
    
    class MyApp:public CWinApp //CWinApp应用程序类
    {
    public:
        //程序入口
        virtual BOOL InitInstance();
    };
    
    class MyFrame:public CFrameWnd //窗口框架类
    {
    public:
        MyFrame();
    
    };
    //mfc.cpp
    #include"mfc.h" MyApp app;//全局应用程序对象,有且仅有一个 BOOL MyApp::InitInstance() { //创建窗口 MyFrame * frame = new MyFrame; //显示和更新 frame->ShowWindow(SW_SHOWNORMAL); frame->UpdateWindow(); m_pMainWnd = frame;//保存指向应用程序的主窗口的指针 return TRUE;//返回正常的初始化 } MyFrame::MyFrame() { Create(NULL, TEXT("mfc")); }

    程序执行的流程:

    1. 程序开始前先实例化应用程序对象(有且仅有一个)
    2. 执行程序的入口函数 InitInstance()
    3. 给框架类MyFrame对象动态分配内存(自动调用它的构造函数),在其构造函数内部,通过CWnd::Create创建窗口
    4. 框架类对象显示窗口 Wnd::ShowWindow
    5. 框架类对象更新窗口 Wnd::UpdateWindow
    6. 保存框架类对象指针 CWinThread::m_pMainWnd

     注意:对项目要进行配置 在共享DLL中使用MFC

  • 相关阅读:
    拼接表达式树的原理
    ql Server 2012完全卸载方法
    jquery tmpl 详解
    Entity Framework(EF) Code First将实体中的string属性映射成text类型的几种方式
    Entity Framework 数据生成选项DatabaseGenerated
    Entity Framework 复杂类型
    EF Code First 学习笔记:约定配置
    比特币转账流程
    mmap 的理解
    copy_to_user,copy_from_user,get_user,put_user函数比较
  • 原文地址:https://www.cnblogs.com/yanchaoyi/p/12584326.html
Copyright © 2011-2022 走看看