码迷,mamicode.com
首页 > Windows程序 > 详细

初步剖析QT事件处理全过程(Windows)

时间:2017-07-03 23:57:40      阅读:397      评论:0      收藏:0      [点我收藏+]

标签:public   font   窗口   代码   images   isp   windows平台   程序   sage   

一、说起Qt事件处理,在windows平台下,当然离不开Win32:

Win32程序的基本结构:
  1.注册窗口;
  2.创建窗口;
  3.启动由GetMessage和DispatchMessage构成的事件循环;
  4.被注册的回调函数 WndProc 负责相应各类事件;

Windows会为当前执行的每个Windows程序维护一个消息队列:

技术分享  

以上即简单介绍Windows消息处理流程;

二、QT事件入口类:

  QApplication
    :public QGuiApplication
    :public QCoreApplication
    :public QObject (QObject三大职责:内存管理、内省、事件处理制)
  GUI应用程序 QApplication
    GUI仅使用QML QGuiApplication
  非GUI应用程序 QCoreApplication

先介绍一个可以在程序开始,捕获系统级事件的方法,捕获后如果下发,才允许qt做进一步处理,如果不下发,qt就傻眼了。

       技术分享

三、接下来进入QT处理事件流程,以流程图和部分伪代码代替,可能大家更容易理解:

技术分享

 

接下来就是大家熟悉的过程了。后续会具体分析各层次的qt事件相关的问题。


转载标明出处,一起学习交流,尊重大家的劳动成果,共同打造文明、有爱社区环境。

 

初步剖析QT事件处理全过程(Windows)

标签:public   font   窗口   代码   images   isp   windows平台   程序   sage   

原文地址:http://www.cnblogs.com/zll-gd/p/7113402.html

(0)
(0)
   
举报
评论 一句话评论(0
登录后才能评论!
© 2014 mamicode.com 版权所有  联系我们:gaon5@hotmail.com
迷上了代码!