“现有最完备的Palm OS 5参考大全——没读过就不要写代码!” --JB Parrett,PalmSource公司首席软件开发师 |
LonnonR.Foster是程序员兼作家,过去9年来他一直从事软件开发,内容包括桌面应用程序、数据库前端、网站、通信软件和手持设备应用程序。几乎自从Palm OS平台出现起,他就一直在为其开发应用程序,起初是为了他的第一个Pilot 5000,后来发展到为Symbol的1700系列开发更复杂的无线软件。Lonnon有限的闲暇时间都花在桌面战术游戏、娱乐Perl编程和阅读任何手边可以得到的读物上。... .. << 查看详细 |
第1部分 palm 0s入门 第1章 理解palm os平台. 1.1 palm os的理念 1.2 桌面和手持应用程序设计之比较 1.2.1 对高性能的期望 1.2.2 有限的输入方式 1.2.3 狭小的屏幕 1.2.4 电池寿命和运算能力 1.2.5 有限的内存 1.2.6 用ram做数据持久存储 1.3 与桌面相连接 1.4 硬件版本之比较 1.5 展望未来 1.6 总结 第2章 理解palm os 2.1 palm os手持设备如何使用电力 2.2 运行palm os应用程序 2.2.1 响应启动码(launch code) 2.2.2 事件(event)处理 2.3 管理内存 .2.3.1 动态ram 2.3.2 存储ram 2.4 使用资源 2.5 设计程序的用户界面 2.5.1 窗体(form) 2.5.2 提示(alert) 2.5.3 菜单(menu) 2.5.4 表格(table) 2.5.5 列表(list) 2.5.6 弹出式列表触发器(pop-uptrigger) 2.5.7 按钮(button) 2.5.8 重复按钮(repeating button) 2.5.9 选择触发器(selector trigger) 2.5.10 单选按钮(push button) 2.5.12 滑动条(slider) 2.5.13 标签(label) 2.5.14 窗体位图(form bitmap) 2.5.15 文本域(field) 2.5.16 graffti“状态指示器(shift lndicator) 2.5.17 滚动条(scroll bar) 2.5.18 自定义控件(gadget) 2.6 与其他设备通信 2.6.1 串行通信 2.6.2 tcp/ip 2.6.3 蓝牙(bluetooth) 2.6.4 网页剪辑(web clipping) 2.6.5 电话 2.6.6 irda 2.6.7 数据交换 2.7 palmos版本比较 2.7.1 2.0版的变化 2.7.2 3.0版的变化 2.7.3 3.1版的变化 2.7.4 3.2版的变化 2.7.5 3.3版的变化 2.7.6 3.5版的变化 2.7.7 4.0版的变化 2.7.8 5.0版的变化 2.8 总结 第2部分 创建palm 0s应用程序 第3章 开发工具介绍 3.1 使用codewarr for palm os 3.1.1 熟悉ide 3.1.2 改变目标设置 3.1.3 在codewarrior中编译和链接 3.2 使用gnuprc—tools 3.2.1 使用prc-tools编译和链接 3.2.2 使用make自动构建 3.3 使用falch.netdeveloperstudio 3.3.1 熟悉ide 3.3.2 在developerstudio中编译和链接 3.4 总结 第4章 编写第一个palmos应用程序 4.1.1 包含头文件 4.1.2 进入应用程序 4.1.3 启动应用程序 4.1.4 关闭应用程序 4.1.5 处理事件 4.1.6 建立窗体 4.1.7 响应窗体事件 4.2 创建hello world2 4.2.1 定义资源常量 4.2.2 响应窗体事件 4.2.3 处理菜单事件 4.2.4 显示提示和使用文本域 4.3 在palm os中使用内存 4.4 整合所有代码 4.5 总结 第5章 调试程序 5.1 使用palm os模拟器 5.1.1 控制pose 5.1.2 初次运行pose 5.1.3 安装rom映像 5.1.4 安装应用程序 5.1.5 保存和恢复配置 5.1.6 调整pose的设置 5.1.7 掌握gremlin自动测试工具 5.1.8 模拟hotsync同步操作 5.1.9 模拟扩展卡 5.1.10 捕获屏幕截图 5.1.11 处理pose的错误 5.2,使用palm os仿真器(simulator) 5.2.1 启动仿真器 5.2.2 装载rom映像 5.2.3 安装应用程序和数据 5.2.4 运行gremlins自动测试工具 5.2.5 查看数据库、内存与事件 5.2.6 保存和装载存储快照 5.3 进行源码级调试, 5.3.1 用codewarrior调试 5.3.2 用gdb调试 5.3.3 用developerstudio调试 5.4 使用palm reporter跟踪应用程序 5.5 复位palm os手持设备 5.6 使用开发者graffiti快捷命令 5.7 使用palm os错误管理器 5.8 总结 第3部分 p01m os编程 第6章 资源的创建与理解 6.1 遵循palm os用户界面指南 6.1.1 创建快速的应用程序 6.1.2 突出常用功能 6.1.3 设计易用的程序 6.1.4 保持palm os风格 6.2 使用constructor工具创建资源 6.3 使用pilrc创建资源 6.3.1 创建应用程序资源 6.3.2 为资源指定常量 6.3.3 查看hello world程序的资源文件 6.4 使用developerstudio创建资源 6.5 总结 第7章 创建窗体和菜单 7.1 使用constructor创建窗体 7.1.1 设置对象的通用属性 7.1.2 设置对象的特有属性 7.2 使用pilrc创建窗体 7.2.1 创建窗体资源 7.2.2 在窗体中添加对象 7.3 使用developerstudio创建窗体 7.4 使用constructor创建菜单 7.5 使用rez创建菜单 7.6 使用pilrc创建菜单 7.7 使用developerstudio创建菜单 7.8 介绍librarian——一个应用程序的例子 7.8.1 在列表视图中显示多条记录 7.8.2 在记录视图中显示书籍的详细信息 7.8.3 在编辑视图中编辑记录 7.8.4 介绍librarian的菜单 7.9 总结 第8章 用户界面元件编程 8.1 提示对话框编程 8.2 窗体编程 8.2.1 切换到新的窗体 8.2.2 使用frmdodialog函数显示模式对话框 8.2.3 使用frmpopupform函数显示模式对话框 8.2.4 更新窗体 8.3 窗体中对象的编程 8.3.1 处理窗体对象的事件 8.3.2 取得对象的指针 8.3.3 隐藏和显示窗体对象 8.4 复选框和单选按钮的编程 8.5 选择触发器编程 8.5.1 选择日期和时间 8.5.2 选择颜色 8.5.3 调节亮度和对比度 8.6 文本域编程 8.6.1 为文本域设置内存句柄 8.6.2 修改丈本域 8.6.3 从文本域中获取文本 8.6.4 设置文本域的焦点 8.6.5 设置丈本域的属性 8.7 自定义控件编程 8.8 列表和弹出式列表编程 8.8.1 获取列表数据 8.8.2 操作列表 8.8.3 动态列表编程 8.8.4 处理弹出式列表 8.9 菜单编程 8.9.1 使用menuerasestatus函数 8.9.2 隐藏菜单项 8.9.3 命令工具栏编程 8.10 总结 第9章 系统元素编程 9.1 检查所支持的功能 9.1.1 确定操作系统的版本 9.1.2 检查其他个别功能 9.2 操作文本 9.2.1 使用字体函数 9.2.2 使用字符串函数 9.2.3 使用字符宏 9.3 处理手写笔事件 9.4 处理按键事件 9.5 查找电话号码 9.6 启动应用程序 9.6.1 调用系统的应用程序启动器 9.6.2 直接启动应用程序 9.6.3 全局发送启动码 9.6.4 创建自己的启动码 9.7 产生随机数 9.8 管理电源 9.9 识别设备 9.10 使用剪贴板 9.11 总结 第10章 图形和声音编程 10.1 管理绘图区 10.1.1 理解窗口 10.1.2 保存和恢复绘图状态 10.1.3 取得和设置色深 10.1.4 使用颜色表 10.2 绘制图形和文本 10.2.1 设置传输模式 10.2.2 设置前景色、背景色和文字颜色 10.2.3 绘制像素 10.2.4 绘制直线 10.2.5 绘制矩形 10.2.6 绘制文本 10.2.7 绘制位图 10.2.8 改变用户界面的颜色 10.3 高分辨率屏幕编程 10.3.1 使用高密度显示功能参数组 10.3.2 检测可用的屏幕密度 10.3.3 设置和取得坐标系统 10.3.4 在坐标系统之间转换 10.4 播放声音 10.4.1 播放简单声音 10.4.2 播放采样声音 10.5 总结 第11章 闹钟和时间编程 11.1 设定闹钟.. 11.1.1 设定一个闹钟 11.1.2 响应闹钟 11.1.3 响应其他启动码 11.2 操作时间值 11.2.1 获取和设定时间值 11.2.2 转换时间值 11.2.3 改变时间值 11.3 遵循用户的日期和时间设置 11.4 引起用户的注意 11.4.1 请求注意 11.4.2 响应提醒管理器 11.4.3 管理引起注意的尝试 11.4.4 阻止提醒指示器出现 11.5 总结 第12章 表格编程 12.1 创建简单的表格 12.1.1 理解表格如何工作 12.1.2 初始化表格 12.1.3 处理表格事件 12.1.4 隐藏行和列 12.2 创建更复杂的表格 12.2.1 将表格与数据关联 12.2.2 滚动表格 12.2.3 处理表格的文本域 12.3 总结 第4部分 信 息 存 储 第13章 存取数据 13.1 理解数据管理器 13.1.1 记录数据库 13.1.2 资源数据库 13.2 数据库操作 13.2.1 创建数据库 13.2.2 打开数据库 13.2.3 关闭数据库 13.2.4 查找数据库 13.2.5 删除数据库 13.2.6 取得和修改数据库信息 13.2.7 创建应用程序信息块 13.3 存储应用程序配置 13.4 使用功能内存 13.5 总结 第14章 操作记录 14.i 使用记录 14.1.1 深入librarian例子程序的记录 14.1.2 比较记录 14.1.3 查找记录 14.1.4 创建记录 14.1.5 删除记录 14.1.6 读取记录 14.1.7 修改记录 14.1.8 随版本更改数据库结构 14.1.9 排序记录 14.1.10 取得和修改记录信息 14.1.11 分类记录 14.1.12 实现私密记录 14.1.13 调整记录大小 14.2 使用资源 14.2.1 查找资源 14.2.2 创建资源 14.2.3 删除资源 14.2.4 读取资源 14.2.5 取得和修改资源信息 14.2.6 调整资源大小 14.3 实现全局查找功能 14.3.1 处理sysapplaunchcmdsavedata 14.3.2 处理sysapplaunchcmdfind 14.3.3 处理sysapplaunchcmdgoto 14.4 总结 第15章 使用辅助存储器 15.1 理解扩展管理器 15.2 理解辅助存储器 15.2.1 组织文件和目录 15.2.2 运行辅助存储器上的程序 15.3 使用虚拟文件系统 15.3.1 检验vfs管理器的存在 15.3.2 监测扩展卡的插入和拔出 15.3.3 取得卷引用 15.3.4 获取和设置卷标 15.3.5 查找卷信息 15.3.6 创建目录 15.3.7 创建文件 15.3.8 删除文件和目录 15.3.9 打开和关闭文件 15.3.10 取得和设置文件信息 15.3.11 读取文件数据 15.3.12 定位文件指针 15.3.13 写数据到文件 15.3.14 查找文件 15.3.15 处理palm os数据库 15.4 总结 第5部分 手持设备的外部通信 第16章 通过交换管理器共享数据 16.1 使用交换管理器 16.1.1 注册数据类型 16.1.2 发送数据 16.1.3 自定义数据接收对话框 16.1.4 接收数据 16.1.5 显示传送的记录 16.1.6 调试传送功能 16.1.7 发送应用程序和数据库 16.2 理解红外库 16.3 总结 第17章 使用串口 17.1 理解palm os串行通信 17.2 使用串行管理器 17.2.1 使用新式串行管理器 17.2.2 使用旧式串行管理器 17.3 总结 第18章 网络通信 18.1 理解tcp/ip网络 18.2 用palm os网络库编程 18.2.1 获得网络库引用 18.2.2 打开网络库 18.2.3 解析主机名和地址 18.2.4 查找服务端口 18.2.5 打开套接字 18.2.6 连接套接字 18.2.7 发送和接收数据 18.2.8 断开套接字 18.2.9 关闭套接字 18.2.10 关闭网络库 18.3 总结 第19章 创建网页剪辑应用程序 19.1 理解网页剪辑 19.1.1 理解网页剪辑的安全性 19.1.2 设计网页剪辑应用程序和网页剪辑 19.2 构建网页剪辑应用程序 19.2.1 组织html文件 19.2.2 定义header标签 19.2.3 格式化文本 19.2.4 链接到其他页面和应用程序 19.2.5 构造查询表单 19.2.6 添加图片 19.2.7 使用网页剪辑应用程序构建器 19.2.8 考察一个网页剪辑应用程序的例子 19.3 生成网页剪辑 19.3.1 定义header标签 19.3.2 为桌面浏览器创建剪辑页面 19.3.3 链接到外部网页剪辑 19.3.4 添加图片 19.3.5 考察一个网页剪辑的例子 19.4 测试网页剪辑应用程序 19.5 总结 第6部分 与桌面计算机同步 第20章 学习管道基础 20.1 理解管道 20.2 设计管道 20.3 安装管道 20.3.1 手工安装管道 20.3.2 创建自动管道安装 20.4 在hotsyne日志中记录动作 20.5 总结 第21章 创建管道 21.1 使用管道向导 21.1.1 选择管道类型 21.1.2 选择手持端应用程序 21.1.3 选择数据传输类型 21.1.4 选择管道的功能特性 21.1.5 确认类名和文件名 21.2 实现管道入口点 21.2.1 实现getconduitlnfo 21.2.2 实现getconduitname 21.2.3 实现getconduitversion 21.2.4 实现openconduit 21.2.5 实现configuration入口点 21.3 使用palm通用管道基础类 21.3.1 遵循通用管道控制流 21.3.2 描述桌面记录格式 21.3.3 实现数据存储和读取 21.3.4 cpalmrecord的数据转换 21.3.5 同步应用程序信息块 21.4 使用palm mfc基础类 21.4.1 遵循mfc管道控制流 21.4.2 实现monitor类 21.4.3 实现table类 21.4.4 实现schema类 21.4.5 实现record类 21.4.6 实现linkconverter类 21.5 使用同步管理器apl 21.5.1 注册和注销管道 21.5.2 打开和关闭手持设备数据库 21.5.3 遍历数据库记录 21.5.4 读取和写入记录 21.5.5 删除记录 21.5.6 维持连接 21.6 总结 第7部分 高 级 主 题 第22章 导向轮编程 22.1 sony jog dial编程 22.1.1 理解jogassist 22.1.2 绕过jogassist工作 22.2 handera jog wheel编程 22.3 treo rocker switch编程 22.4 总结 第23章 拾遗 23.1 创建大型应用程序 23.1.1 突破32kb的屏障 23.1.2 将应用程序分段 23.2 为应用程序增加自定义字体 23.3 动态创建用户界面 23.4 应用程序本地化 23.5 使用文件流(file streaming)apl 23.5.1 打开文件流 23.5.2 关闭文件流 23.5.3 获取文件流错误 23.5.4 删除文件流 23.5.5 在文件流中定位 23.5.6 读写文件流数据 23.6 总结 术语表... |
商品评论(0条)