QApplication (GUI 程序中 有且仅有一个)

QApplication 类 管理GUI程序的控制流和主设置。

QApplication 包含主事件循环。所有来自窗口系统和其他源的事件将被处理和分配。它也处理程序的初始化,析构和提供会话管理。

对于非GUI的用QCoreApplication 代替QApplication,它不依赖QtGui库。

qApp是一个全局的指针,指向QApplication的对象。

QApplication的主要职责如下:

1,初始化程序的用户桌面设置,如palette(),font(),doubleClickInterval()(鼠标双击的时间间隔),并一直监视这些属性,以防用户改变他们(得到及时的更新)。

2,处理事件,意思是它接收来自底层窗口系统的事件,并把他们分发给关联的窗口,通过sendEvent(),postEvent(),你可以把你自己的事件发给部件。

3,解析命令行参数。

4,定义程序的观感(被封装在QStyle 对象中)。通过setStyle()可以实时的改变。

5,它知道程序的窗口信息。可以通过widgetAt(),还可以得到一个窗口列表通过topLevelWidgets(),然后通过closeAllWindows()关闭所有窗口。

6,还管理鼠标操作。

7,它还提供一个复杂的会话管理。它使程序在用户退出时可以“优美”的结束,或者如果干掉一个进程如果这个进程不能保留程序之前的状态(对会话管理不了解,翻译的不准确)

 由于QApplication对象做了这么多初始化操作,所以它必须在所以与用户接口有关的对象创建之前被创建。

 

 

 

posted @ 2013-02-03 22:44  lc_cnblog  阅读(3826)  评论(0编辑  收藏  举报