ITPub博客

首页 > Linux操作系统 > Linux操作系统 > hellogui.app(转)

hellogui.app(转)

原创 Linux操作系统 作者:jcszjswkzhou 时间:2019-02-06 11:39:05 0 删除 编辑
前面生成了一个文本模式版本的“Hello World”程序,但没有人真正希望在Symbian OS这类User-friendly的系统上运行文本模式的程序。文本模式编程对测试和学习有用,但实际程序使用的是GUI。

一、图形架构简介

最重要的Symbian OS图形和GUI组件及其关系如下图所示:
GUI应用程序
^
|
应用程序架构 --> Avkon、UIKON --> Shell
^
|
CONE ------------不提供任何具体控件
^
|
窗口服务器
^
|
字体和位图服务器
^
|
GDI 、屏幕字体 --> 代表Use

二、应用程序结构

Symbian OS GUI程序使用由Avkon和应用程序架构(APPARC)提供的框架来协调工作。最小应用程序包含4个类:

  • 应用程序类 :用于定义应用程序的属性,还用于生成新的空白文档。在最简单的情况下,必须定义的唯一属性是应用程序的UID(unique identitier)
  • 文档类 :表示应用程序的数据。如果应用程序是基于文件的,则文档类负责保存和恢复应用程序的数据。即使应用程序不是基于文件的,也必须具有一个文档类,尽管这个类除了创建应用程序接口为不会完成更多的事
  • 应用程序UI类 :创建一个应用程序视图,来处理绘图和基于屏幕的交互
  • 应用程序View类:在屏幕上显示数据,并允许用户与之交互


CHelloguiApplic CHelloguiDocument CHelloguiAppUi CHelloguiAppView
ation
| | | |
CAknApplication CAknDocument CAknAppUi |
| | | |
-----APPARC---------------------------------|---------------------CONE----------------------
CApaApplications CApaDocument | CCoeAppUi CCoeControl CCoeEnv

除了4个c++类外,必须在一个资源文件中定义应用程序的GUI元素(菜单、字符串资源)。

三、第一个GUI程序hellogui.app

从命令行生成程序可遵照生成HelloWorld的相同步骤。从包含bld.inf文件的目录中,输入

bldmake bldfiles

albd build wins udeb

epoc

在Emulator的other中可以发现hellogui作为一个应用程序而显示,点击图标可以启动它。

详细描述请参考S60Examples.chm中的HelloWorld例程。


来自 “ ITPUB博客 ” ,链接:http://blog.itpub.net/10294527/viewspace-126350/,如需转载,请注明出处,否则将追究法律责任。

请登录后发表评论 登录
全部评论

注册时间:2007-08-29

  • 博文量
    3488
  • 访问量
    2603876