zoukankan      html  css  js  c++  java
  • 窗口创建及消息循环

    窗口创建

    1. 自定义窗口类别           WNDCLASS
    2. 注册窗口类               RegisterClass
    3. 创建窗口                 CreateWindow/CreateWindowEx                 WM_CREATE
    4. 显示窗口                 ShowWindow                                  WM_SIZE & WM_SHOWWINDOW
    5. 更新窗口                 UpdateWindow(使整个窗口区域无效)            WM_PAINT
    6. 消息循环                 GetMessage/TranslateMessage/DispatchMessage
    7. 关闭窗口                                                             WM_CLOSE
    8. 摧毁窗口                 DestroyWindow                               WM_DESTROY
    9. 退出消息循环             PostQuitMessage                             WM_QUIT

    消息循环

    1. Windows系统监控到消息 → 应用程序消息队列                         至2
       Windows系统监控到消息 → 应用程序窗口过程                         至4
    2. 应用程序从消息队列取出消息 → Windows系统                         至3     GetMessage/DispatchMessage
    3. Windows系统得到消息 → 应用程序窗口过程                           至4            
    4. 应用程序窗口过程处理消息 → 应用程序消息队列                      至2
       应用程序窗口过程处理消息 → 应用程序窗口过程                      至4     SendMessage
       应用程序窗口过程处理消息 → 应用程序继续运行(DispatchMessage不再阻塞)
  • 相关阅读:
    互斥锁和条件变量实现生产者消费者问题
    信号量实现生产者消费者问题
    IPC进程间通信---共享内存
    IPC进程间通信---消息队列
    图的遍历---广度优先遍历和深度优先遍历
    图的两种存储方式---邻接矩阵和邻接表
    内存分配---FF、BF、WF三种算法
    C++的前置++、后置++和前置--、后置--
    IPC进程间通信---信号量
    Linux进程间通信---管道和有名管道
  • 原文地址:https://www.cnblogs.com/TaoyzDream/p/3695056.html
Copyright © 2011-2022 走看看