惯性聚合 高效追踪和阅读你感兴趣的博客、新闻、科技资讯
阅读原文 在惯性聚合中打开

推荐订阅源

宝玉的分享
宝玉的分享
NISL@THU
NISL@THU
E
Exploit-DB.com RSS Feed
L
LINUX DO - 热门话题
L
Lohrmann on Cybersecurity
K
Kaspersky official blog
Project Zero
Project Zero
Cisco Talos Blog
Cisco Talos Blog
T
The Exploit Database - CXSecurity.com
P
Palo Alto Networks Blog
C
CXSECURITY Database RSS Feed - CXSecurity.com
T
Threatpost
S
Schneier on Security
G
GRAHAM CLULEY
The Hacker News
The Hacker News
T
Threat Research - Cisco Blogs
Scott Helme
Scott Helme
Threat Intelligence Blog | Flashpoint
Threat Intelligence Blog | Flashpoint
P
Privacy & Cybersecurity Law Blog
C
Cyber Attacks, Cyber Crime and Cyber Security
Cyberwarzone
Cyberwarzone
C
CERT Recently Published Vulnerability Notes
T
Tor Project blog
AWS News Blog
AWS News Blog
Simon Willison's Weblog
Simon Willison's Weblog
cs.CL updates on arXiv.org
cs.CL updates on arXiv.org
爱范儿
爱范儿
P
Privacy International News Feed
云风的 BLOG
云风的 BLOG
P
Proofpoint News Feed
S
Securelist
G
Google Developers Blog
The Last Watchdog
The Last Watchdog
Google Online Security Blog
Google Online Security Blog
美团技术团队
F
Fortinet All Blogs
小众软件
小众软件
Recorded Future
Recorded Future
V
Visual Studio Blog
B
Blog RSS Feed
H
Help Net Security
CTFtime.org: upcoming CTF events
CTFtime.org: upcoming CTF events
Google DeepMind News
Google DeepMind News
Blog — PlanetScale
Blog — PlanetScale
博客园 - 聂微东
Stack Overflow Blog
Stack Overflow Blog
Martin Fowler
Martin Fowler
Latest news
Latest news
Spread Privacy
Spread Privacy
H
Heimdal Security Blog

博客园 - 不明飞行物

磨刀不误砍柴工-打造超级Symbian开发环境 Symbian OS 开发初级手册 (8) 多线程 Symbian OS 开发初级手册 (7) Descriptors - 不明飞行物 Symbian OS 开发初级手册 (6) CleanupStack and Two-phase Symbian OS 开发初级手册 5 - Leave Symbian OS 开发初级手册 (4) mmp, pkg 文件 和 makesis 工具 Symbian OS 开发初级手册 (2)基本数据类型 Symbian OS 开发初级手册 (1) Introduction 利用JavaMail收/发Gmail邮件(SSL) Tapestry4在提交前判断checkbox是否没有一个被选中 - 不明飞行物 - 博客园 恢复windows的引导程序 在页面中插入Windows Media Player播放器 - 不明飞行物 Java中Set的深入研究 - 不明飞行物 - 博客园 Hibernate和Spring的延迟加载和DAO模式 用spring管理hibernate事务时,lzay="true"不能用的解决方法 java中List和Set对象的互换 Tapestry4.0中取得页面request - 不明飞行物 - 博客园 Logout in tapesty4.0 - 不明飞行物 validators里自定义错误信息 - 不明飞行物 - 博客园
Symbian OS 开发初级手册 (3)GUI程序中的4个基本类
不明飞行物 · 2006-05-28 · via 博客园 - 不明飞行物

图形界面的HelloWorld比文字版复杂了许多! 做过windows图形和命令行程序的人们应该可以很容易的理解这一点。这个Helloworld一共有4个类, 他们是Symbian OS中任何图形程序都不可少的4个基本类。他们建立了图形界面程序的基本框架, 使得程序员们很容易就知道某些代码应该放在什么地方, 比如绘图的代码就应该放在View里边, 同样当我们去读一个程序的时候, 如果我们在意的是程序的数据结构,就该去看Document类的实现。
CExampleApplication
Application 类一共有两个作用:第一个是设置这个应用程序的属性, 比如UID, 每一个应用程序都有其独特的UID. const TUid KUidHelloWorld = { 0X10008ACE };KUidHelloWorld就是这个Helloworld的UID.,AppDllUid() 向高层的框架提供这个应用程序的UID, 框架就用此来识别我们的程序。 另外就是制造一个Document类的实例, 因此我们只需要两个函数:AppDllUid 和 CreateDocument。CExampleApplication 从 CEikApplication继承而来,很多不需要我们定义函数都被包含在CEikApplication中
CExampleDocument
Document 类是应用程序的数据模型,如果这个程序是以文件为基础的,它负责程序的文件操作。 我们的Helloworl不涉及到任何文件,但是我们仍然需要这个个类,因为它还负责制造UI类的实例。
CExampleAppUI
UI类尽管名字是“用户界面“, 他并不是可视的组件,它制造View类的实例, 而它更重要的任务是分派命令和事件, 比如菜单命令就由UI来决定怎样处理,分配到什么类,什么函数。 又如键盘事件由UI来决定分派到那个控件去处理。HandleCommandL() 这个函数就是用来处理命令的。
CExampleAppView
View 类是可视的控件, 它负责屏幕显示,同时也可以提供相应的函数来响应相关的事件。描绘用的代码就放在Draw函数中
这4个类的声明都放在相应的头文件中, 实现在相应的cpp中,除此之外,你会发现还有一个源文件:Helloworldbasic.cpp。 这个文件是Helloworld的入口, 它的作用很简单,就是建立一个Application类的实例。 因此大部分图形界面的工程中这个文件都是差不多的,只是Application类的名字要相应改变。
这一课我们讲了Symbian OS图形程序中4个基本的类以及程序的入口。 下一课我们讲Helloworldbasic中的mmp 文件和pkg文件。 然后我们将概述如何生成sis文件, 也就是手机的安装文件。最后我们的helloworld 就可以在支持symbian 的手机上运行了!