在Symbian下开发程序这么久,但是一直不清楚UI程序框架的具体实现是怎样的。虽然有一些参考书籍讲解了大体的结构,但是没有具体看到实现的Code,还是没有那么具体的理解。开源使得我有机会自己去看看,UI程序框架到底是怎样的。
这篇文章是一个系列的如下文章,这是第一篇。
(1)UI程序结构
(3)窗口管理及绘制过程
【UI程序基本结构及用到的核心库】
了解Symbian UI程序框架的人,都会很熟悉下图。从下图,我们大概可以看出,初始化过程中会首先创建CAknApplication,再通过CAknApplication创建CAknDocument,接着创建CAknViewAppUi,最后会创建CAknView及控件(实际写程序时,创建的都是这些类的派生类)。下面我们跟着Code走,把这个过程解释的更详细些。
写UI程序,一般都会引用这几个库:
库名称 | 功能 | 代码位置 |
apparc.lib | 提供了Application/Document管理的基本代码 | /FCL /sf /mw /appsupport /appfw /apparchitecture /group /APPARC.MMP |
cone.lib | 是UI程序框架的基础库,包括CCoeEnv等的实现 | / |