您的位置:首页 > 编程语言 > Qt开发

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

2017-07-03 23:04 302 查看
[b]转载标明出处,一起学习交流,尊重大家的劳动成果,共同打造文明、有爱社区环境。[/b]

[b][b]一、说起Qt事件处理,如果在windows平台下,当然离不开Win32,!!他俩之间的关系有点说不清道不明的!![/b][/b]

Win32程序的基本结构:

  1.注册窗口;

  2.创建窗口;

  3.启动由GetMessage和DispatchMessage构成的事件循环;

  4.被注册的回调函数 WndProc 负责相应各类事件;

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


  

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

[b]二、先简单介绍QT事件这些类间的关系:[/b]

  QApplication

    :public QGuiApplication

    :public QCoreApplication

    :public QObject (QObject三大职责:内存管理、内省、事件处理制)

  GUI应用程序 QApplication

    GUI仅使用QML QGuiApplication

  非GUI应用程序 QCoreApplication

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





CSDN的编辑器粘帖图总觉得有点bug,会不会是我的火狐浏览器的问题。从左到右选择复制和从右到左复制难道还有区别,法克!

 
内容来自用户分享和网络整理,不保证内容的准确性,如有侵权内容,可联系管理员处理 点击这里给我发消息