栏目分类:
子分类:
返回
名师互学网用户登录
快速导航关闭
当前搜索
当前分类
子分类
实用工具
热门搜索
名师互学网 > IT > 软件开发 > 后端开发 > C/C++/C#

MFC学习笔记框架(底层实现窗口、利用MFC实现窗口、消息映射机制)

C/C++/C# 更新时间: 发布时间: IT归档 最新发布 模块sitemap 名妆网 法律咨询 聚返吧 英语巴士网 伯小乐 网商动力

MFC学习笔记框架(底层实现窗口、利用MFC实现窗口、消息映射机制)

 提供参考框架,具体内容回忆与翻阅资料。

底层实现窗口(windows)
  1.  SDK概念、API概念、句柄概念
  2. 消息处理机制
  3. 头文件windows.h
  4. 程序入口(winMain)

具体步骤 

  1.  设计窗口 WNDCLASS wc
  2. 注册窗口 RegisterClass
  3. 创建窗口 createWindow
  4. 显示和更新 showWindow updateWindow
  5. 通过循环取消息    MSG msg

    写循环 while(1){

            GetMessage == false 退出循环

            翻译消息

            分发消息  }

  6. 窗口过程 

        LRESULT CALLBACK WindowProc

        返回默认处理

        return DefWindowProc(hWnd,uMsg,wParam,lParam)

操作判断:

        右上角X, WM_CLOSE    ->     destroy信号

        WM_DESTROY    调用postQuitMessage(0)

        按下鼠标左键 干什么 ……

        键盘按下干什么 ……

        绘图与文字

利用MFC创建窗口
  • MFC头文件afxwin.h
  • 自定义类 MyApp:public CWinApp 继承于 CWinApp 应用程序类  创建  MyApp app 应用程序对象(有且仅有一个)
  • 在构造中进行初始化,将自定义内容添加到初始化函数中
  • 程序入口 InitInstance()
  • 在程序入口里创建窗口
  • 窗口框架类 Myframe 继承于 CframeWnd
  • Myframe 构造中 Create(NULL,窗口标题)(可以查询Create()来自定义窗口)
  • 创建窗口对象
  • 显示和更新m_pMainWnd =frame;   //保存指向应用程序的主窗口的指针
  • 程序入口函数 return TRUE
  • 对项目进行配置    “在共享DLL中使用MFC”

消息映射机制 

        通过消息宏来进行消息映射,调用相关消息映射函数


  •  声明宏  写到  .h  中
  • 分界宏  写到  .cpp中
  • 消息宏  写到分界宏中间 
EX.      .h文件
class Myframe:public CframeWnd
{
    pubilc:
        Myframe();

    //声明消息映射,必须用在类声明中
    DECLARE_MESSAGE_MAP()
};
EX.     .cpp文件
BEGIN_MESSAGE_MAP(Myframe,CframeWnd)
    ON_WM_LBUTTonDOWN()
       .......
END_MESSAGE_MAP()

       

转载请注明:文章转载自 www.mshxw.com
本文地址:https://www.mshxw.com/it/457581.html
我们一直用心在做
关于我们 文章归档 网站地图 联系我们

版权所有 (c)2021-2022 MSHXW.COM

ICP备案号:晋ICP备2021003244-6号