简介
QCoreApplication用于非GUI的qt应用程序,有且只有一个QCoreApplication实例对象,它包含主事件循环,所有的事件都会被处理和分发,这些事件可能来自操作系统(例如,计时器和网络事件)和其它的来源。它还处理应用程序的初始化和终结,以及系统范围和应用程序范围的设置。
事件循环
调用exec()后就会进入事件循环。长时间运行的操作可以调用processEvents()来保持应用程序的响应性。
通常,我们建议您尽早在main()函数中创建一个QCoreApplication、QGuiApplication或QApplication对象。
调用exec()函数后,直到事件循环退出该函数才会返回;也就是调用quit()时退出程序。事件可以使用sendEvent()、postEvent()和sendPostedEvents()发送或发布。
挂起事件可以通过removePostedEvents()或使用flush()删除。该类提供了一个quit()插槽和一个aboutToQuit()信号。
另外,可以通过静态方法instance()来获取QcoreApplication对象的句柄
QApplication类用来管理GUI的qt应用程序,它可以控制程序流程和一些主要的设置,并且无论程序有多少个窗口,该类的实例化对象只有一个。QApplication继承自QGuiApplication类,并且添加了一些函数用来支持以QWidget基础组件,可以控制QWidget组件的初始化工作和收尾工作。