第一部分 S60应用框架基础知识第1章 Symbian OS应用程序体系架构 1
1.1 MVC设计模式分析 2
1.2 S60应用程序框架的核心类 4
1.3 S60应用程序架构的初始化 6
第2章 S60的三种UI体系架构 9
2.1 基于控件模式的UI架构 10
2.2 基于视图切换模式的UI架构 11
2.3 基于对话框模式的UI架构 15
2.4 选择适当的应用程序架构 16
第3章 资源文件 18
3.1 与资源文件有关的系统头文件及其他文件 18
3.2 资源文件如何工作 19
3.3 资源文件的语法结构 20
3.4 注册资源文件 22
3.5 资源文件举例 23
第4章 字符资源和S60项目本地化 27
4.1 字符资源定义 27
4.2 本地化过程 27
4.3 如何使用字符资源 28
第5章 菜单 31
5.1 使用菜单资源定义菜单 31
5.2 应用程序与菜单关联 33
5.3 动态菜单 38
5.4 创建菜单子菜单 39
第6章 面板控件 40
6.1 面板控件的组成 40
6.2 标题面板 43
6.3 上下文面板 44
6.4 导航面板 46
第7章 从HelloWorld认识S60项目开发 53
7.1 在Carbide C++集成开发环境里创建S60应用程序 53
7.2 编译、调试和运行 57
7.3 S60应用程序打包装机 65
7.4 应用程序UI体系架构 66
7.5 S60框架启动顺序 84
7.6 手机任务列表 85
7.7 S60第三版的开机自启动 89
第8章 基于视图模式的UI框架 91
8.1 创建视图对象 91
8.2 视图资源定义 93
8.3 本地视图切换 94
8.4 事件处理 95
8.5 基于视图模式S60项目举例 97
第9章 自定义控件 118
9.1 控件的基础知识 118
9.2 创建自定义控件 120
9.3 简单控件构造实例 124
9.4 复杂控件构造实例 126
第二部分 S60应用程序UI设计第10章 对话框控件 129
10.1 对话框基本概念 130
10.2 标准对话框 130
10.3 对话框的使用 131
10.4 项目实践 136
第11章 查询对话框 156
11.1 构造查询对话框控件 156
11.2 数字查询对话框 157
11.3 日期和时间查询对话框 158
11.4 浮点查询对话框 160
11.5 查询对话框实例 161
第12章 编辑框控件 163
12.1 文本编辑框 163
12.2 数字编辑框 166
12.3 密码编辑框 167
第13章 窗体控件 169
13.1 定义表单资源和表单类 170
13.2 初始化窗体 181
13.3 初始化表单数据 182
13.4 保存表单数据 183
13.5 恢复表单数据改变 184
第14章 列表控件 185
14.1 列表的分类 185
14.2 构造列表控件的流程 186
14.3 列表控件实例 188
第15章 通知提示框控件 198
15.1 非阻塞提示框 198
15.2 阻塞提示框 200
第三部分 S60应用程序项目实践第16章 S60应用中的文件操作 201
16.1 建立或者打开一个文件 202
16.2 读取文件内容 202
16.3 读取的权限和功能 203
第17章 HTTP协议的网络编程 206
17.1 创建类,继承MHTTPTransactionCallback 207
17.2 函数LinkUrl 208
17.3 函数AddHeadData 209
17.4 函数MHFRunL 209
17.5 函数GetHeadField 211
17.6 函数HandleCommandL 212
17.7 在mmp里面添加权限 212
17.8 HTTP的工作顺序流程图 212
17.9 HTTP实例 214
17.10 完整源代码 217
第18章 短信 224
18.1 构造发短信的类 224
18.2 编写二次构造方法 225
18.3 连接SMS服务器成功,系统回调方法 226
18.4 准备写短信得到SMS客户端句柄 226
18.5 编辑短信功能 227
18.6 发送短信功能 227
18.7 发送完成,系统调用回调函数通知 229
18.8 在应用程序中实现发送短信 230
18.9 在.mmp文件中添加相关的lib和发短信的权限 231
18.10 短信发送流程图 231
18.11 发短信的完整代码 232
第19章 手机通讯录 239
19.1 读取手机通讯录 239
19.2 修改联系人数据 243
19.3 删除联系人 244
19.4 修改.mmp文件,添加权限 245
19.5 添加联系人 245
19.6 联系人数组的内容显示 246
19.7 完整项目代码 247
第20章 简单的活动对象计时器 257
20.1 Active Object(AO)框架说明 257
20.2 简单的屏幕显示倒计时实例 258
20.3 特别说明 264
第21章 S60多媒体应用程序开发 265
21.1 S60应用中的图像处理 265
21.2 S60应用中的音频处理 267
21.3 调用系统多媒体 268
第22章 S60实践项目 269
22.1 创建一个新的HelloWorld工程 269
22.2 在资源文件中定义菜单项 269
22.3 ListBox和Form资源 271
22.4 如何把记事本信息保存到手机 294
22.5 如何把记事本信息通过Socket发送到指定服务器 301