当前位置: 代码迷 >> Symbian >> Helloworld程序框架,该如何解决
  详细解决方案

Helloworld程序框架,该如何解决

热度:10051   发布时间:2013-02-26 00:00:00.0
Helloworld程序框架
学习学习系统框架

初看来helloWorld就有四个类:CExampleApplication、CExampleDocument、CExampleAppUI、CExampleAppView。这四个类分别由 CAknApplication、CAknDocument、CAknAppUI、CCoeControl派生而来。

Symbian应用程序的架构类似于MFC的架构,其基本部分由4个基本类组成:

1、Application 类一共有两个作用:第一个是设置这个应用程序的属性, 比如UID, 每一个应用程序都有其独特的UID.const TUid KUidHelloWorld = { 0X10008ACE };KUidHelloWorld就是这个Helloworld的UID.,AppDllUid() 向高层的框架提供这个应用程序的UID, 框架就用此来识别我们的程序。 另外就是制造一个Document类的实例, 因此我们只需要两个函数:AppDllUid 和 CreateDocument。CExampleApplication 从 CEikApplication继承而来,很多不需要我们定义函数都被包含在CEikApplication中。

2、Document 类是应用程序的数据模型,如果这个程序是以文件为基础的,它负责程序的文件操作。 我们的Helloworl不涉及到任何文件,但是我们仍然需要这个个类,因为它还负责制造UI类的实例。

3、UI类尽管名字是“用户界面“, 他并不是可视的组件,它制造View类的实例, 而它更重要的任务是分派命令和事件, 比如菜单命令就由UI来决定怎样处理,分配到什么类,什么函数。 UI类中有两个比较重要的函数,一个是HandelCommandL( ),用于处理菜单事件;还有一个是HandelKeyEventL( ),用于处理键盘事件。

4、View 类是可视的控件, 它负责屏幕显示,同时也可以提供相应的函数来响应相关的事件。视图类从CAknView派生而来,也具有UI类的两个函数,用于在视图中处理相应的事件。描绘用的代码就放在Draw函数中。

这4个类的声明都放在相应的头文件中, 实现在相应的cpp中,除此之外,你会发现还有一个源文件:Helloworldbasic.cpp。 这个文件是Helloworld的入口, 它的作用很简单,就是建立一个Application类的实例。 因此大部分图形界面的工程中这个文件都是差不多的,只是Application类的名字要相应改变。

了解了程序基本的构架,就可以动手写几行代码,或者对于HelloWorld稍加改动,以便了解深层次的知识了。


------解决方案--------------------------------------------------------
支持分享~~
------解决方案--------------------------------------------------------
感谢分享
------解决方案--------------------------------------------------------
不错,学习了!
------解决方案--------------------------------------------------------

------解决方案--------------------------------------------------------
继续学习。。。
------解决方案--------------------------------------------------------
路过学习一下
------解决方案--------------------------------------------------------
学习学习啊!
------解决方案--------------------------------------------------------
有点不太直观
------解决方案--------------------------------------------------------

------解决方案--------------------------------------------------------
good subject
------解决方案--------------------------------------------------------
程序员都知道HELLO WORLD!
------解决方案--------------------------------------------------------

支持!!
------解决方案--------------------------------------------------------
学习了
------解决方案--------------------------------------------------------
好,心得体会很好
------解决方案--------------------------------------------------------
好难啊,不会啊
------解决方案--------------------------------------------------------
共和国之辉 地图包
------解决方案--------------------------------------------------------
写的相当不错呐
------解决方案--------------------------------------------------------
已经学习
------解决方案--------------------------------------------------------
感谢分享!
------解决方案--------------------------------------------------------
纯支持。。。。
------解决方案--------------------------------------------------------
wo cao ni daye ,zen me deng lu bu liao
------解决方案--------------------------------------------------------
每天回帖即可获得10分可用分!
------解决方案--------------------------------------------------------
Symbian编程很难的。。
------解决方案--------------------------------------------------------
学习来了
------解决方案--------------------------------------------------------
  相关解决方案