第一图书网

Palm OS编程宝典

弗斯特 电子工业
出版时间:

2006-1  

出版社:

电子工业  

作者:

弗斯特  

页数:

682  

Tag标签:

无  

内容概要

  本书详细地讲解了Palm OS编程,内容涵盖了使用C/C++进行Palm OS开发的各个方面。全书共23章,分为7个部分,包括:Palm OS入门、创建Palm OS应用程序、Palm OS编程、信息存储、手持设备的外部通信、与桌面计算机同步、高级主题。书中内容由浅入深,除了结合实例对Palm OS的系统API进行细致的讲解外,还涉及到一些较为深入的高级主题。此外,书中对Palm OS开发中常用的几种开发工具,如Metrowerks CodeWarrior和Falch.net DeveloperStudio等,也做了全面而详细的介绍。本书的最后附有术语表,列出了与Palm OS编程相关的大量术语。  无论对想要入门的Palm OS开发新手,还是想进一步提高的“门内汉”,甚至对于Palm OS高级开发者,此书都会对您有所帮助,读者都将在书中找到自己所需的内容。

作者简介

作者:(美)弗斯特程序员兼作家,过去9年来他一直从事软件开发,内容包括桌面应用程序、数据库前端、网站、通信软件和手持设备应用程序。几乎自从Palm OS平台出现起,他就一直在为其开发应用程序,起初是为了他的第一个Pilot 5000,后来发展到为Symbol的l700系列开发更复杂的无线软件。Lonnon有限的闲暇时间都花在桌面战术游戏、娱乐Perl编程和阅读任何手边可以得到的读物上。

书籍目录

第1部分 Palm OS入门第1章 理解Palm OS平台 31.1 Palm OS的理念 31.2 桌面和手持应用程序设计之比较 41.2.1 对高性能的期望 41.2.2 有限的输入方式 51.2.3 狭小的屏幕 51.2.4 电池寿命和运算能力 61.2.5 有限的内存 61.2.6 用RAM做数据持久存储 61.3 与桌面相连接 61.4 硬件版本之比较 71.5 展望未来 131.6 总结 13第2章 理解Palm OS 142.1 Palm OS手持设备如何使用电力 142.2 运行Palm OS应用程序 152.2.1 响应启动码(Launch Code) 152.2.2 事件(Event)处理 162.3 管理内存 162.3.1 动态RAM 172.3.2 存储RAM 182.4 使用资源 202.5 设计程序的用户界面 212.5.1 窗体(Form) 212.5.2 提示(Alert) 222.5.3 菜单(Menu) 222.5.4 表格(Table) 232.5.5 列表(List) 232.5.6 弹出式列表触发器(Pop-up Trigger) 242.5.7 按钮(Button) 242.5.8 重复按钮(Repeating Button) 242.5.9 选择触发器(Selector Trigger) 242.5.10 单选按钮(Push Button) 252.5.11 复选框(Check Box) 252.5.12 滑动条(Slider) 252.5.13 标签(Label) 262.5.14 窗体位图(Form Bitmap) 262.5.15 文本域(Field) 262.5.16 Graffiti状态指示器(Shift Indicator) 262.5.17 滚动条(Scroll Bar) 272.5.18 自定义控件(Gadget) 272.6 与其他设备通信 282.6.1 串行通信 282.6.2 TCP/IP 282.6.3 蓝牙(Bluetooth) 292.6.4 网页剪辑(Web Clipping) 292.6.5 电话 302.6.6 IrDA 302.6.7 数据交换 302.7 Palm OS版本比较 302.7.1 2.0版的变化 312.7.2 3.0版的变化 312.7.3 3.1版的变化 322.7.4 3.2版的变化 322.7.5 3.3版的变化 322.7.6 3.5版的变化 322.7.7 4.0版的变化 332.7.8 5.0版的变化 332.8 总结 34第2部分 创建Palm OS应用程序第3章 开发工具介绍 373.1 使用CodeWarrior for Palm OS 373.1.1 熟悉IDE 393.1.2 改变目标设置 463.1.3 在CodeWarrior中编译和链接 483.2 使用GNU PRC-Tools 483.2.1 使用PRC-Tools编译和链接 503.2.2 使用make自动构建 513.3 使用Falch.net DeveloperStudio 543.3.1 熟悉IDE 553.3.2 在DeveloperStudio中编译和链接 613.4 总结 61第4章 编写第一个Palm OS应用程序 624.1 创建Hello World 1 624.1.1 包含头文件 634.1.2 进入应用程序 644.1.3 启动应用程序 654.1.4 关闭应用程序 664.1.5 处理事件 664.1.6 建立窗体 684.1.7 响应窗体事件 694.2 创建Hello World 2 694.2.1 定义资源常量 704.2.2 响应窗体事件 734.2.3 处理菜单事件 744.2.4 显示提示和使用文本域 764.3 在Palm OS中使用内存 774.4 整合所有代码 814.5 总结 87第5章 调试程序 885.1 使用Palm OS模拟器 885.1.1 控制POSE 905.1.2 初次运行POSE 915.1.3 安装ROM映像 925.1.4 安装应用程序 945.1.5 保存和恢复配置 955.1.6 调整POSE的设置 955.1.7 掌握Gremlin自动测试工具 975.1.8 模拟HotSync同步操作 1005.1.9 模拟扩展卡 1015.1.10 捕获屏幕截图 1035.1.11 处理POSE的错误 1035.2 使用Palm OS仿真器(Simulator) 1045.2.1 启动仿真器 1055.2.2 装载ROM映像 1065.2.3 安装应用程序和数据 1065.2.4 运行Gremlins自动测试工具 1065.2.5 查看数据库、内存与事件 1075.2.6 保存和装载存储快照 1095.3 进行源码级调试 1095.3.1 用CodeWarrior调试 1095.3.2 用GDB调试 1125.3.3 用DeveloperStudio调试 1145.4 使用Palm Reporter跟踪应用程序 1165.5 复位Palm OS手持设备 1185.6 使用开发者Graffiti快捷命令 1185.7 使用Palm OS错误管理器 1195.8 总结 120第3部分 Palm OS编程第6章 资源的创建与理解 1236.1 遵循Palm OS用户界面指南 1236.1.1 创建快速的应用程序 1246.1.2 突出常用功能 1246.1.3 设计易用的程序 1256.1.4 保持Palm OS风格 1276.2 使用Constructor工具创建资源 1306.3 使用PilRC创建资源 1396.3.1 创建应用程序资源 1396.3.2 为资源指定常量 1436.3.3 查看Hello World程序的资源文件 1436.4 使用DeveloperStudio创建资源 1456.5 总结 154第7章 创建窗体和菜单 1557.1 使用Constructor创建窗体 1557.1.1 设置对象的通用属性 1577.1.2 设置对象的特有属性 1587.2 使用PilRC创建窗体 1687.2.1 创建窗体资源 1687.2.2 在窗体中添加对象 1697.3 使用DeveloperStudio创建窗体 1777.4 使用Constructor创建菜单 1807.5 使用Rez创建菜单 1827.6 使用PilRC创建菜单 1867.7 使用DeveloperStudio创建菜单 1887.8 介绍Librarian——一个应用程序的例子 1897.8.1 在列表视图中显示多条记录 1907.8.2 在记录视图中显示书籍的详细信息 1917.8.3 在编辑视图中编辑记录 1917.8.4 介绍Librarian的菜单 1927.9 总结 194第8章 用户界面元件编程 1958.1 提示对话框编程 1958.2 窗体编程 1978.2.1 切换到新的窗体 1978.2.2 使用FrmDoDialog函数显示模式对话框 1988.2.3 使用FrmPopupForm函数显示模式对话框 2008.2.4 更新窗体 2018.3 窗体中对象的编程 2038.3.1 处理窗体对象的事件 2048.3.2 取得对象的指针 2068.3.3 隐藏和显示窗体对象 2078.4 复选框和单选按钮的编程 2108.5 选择触发器编程 2118.5.1 选择日期和时间 2118.5.2 选择颜色 2138.5.3 调节亮度和对比度 2158.6 文本域编程 2158.6.1 为文本域设置内存句柄 2158.6.2 修改文本域 2168.6.3 从文本域中获取文本 2178.6.4 设置文本域的焦点 2188.6.5 设置文本域的属性 2198.7 自定义控件编程 2208.8 列表和弹出式列表编程 2258.8.1 获取列表数据 2258.8.2 操作列表 2268.8.3 动态列表编程 2278.8.4 处理弹出式列表 2288.9 菜单编程 2298.9.1 使用MenuEraseStatus函数 2308.9.2 隐藏菜单项 2308.9.3 命令工具栏编程 2318.10 总结 234第9章 系统元素编程 2359.1 检查所支持的功能 2359.1.1 确定操作系统的版本 2369.1.2 检查其他个别功能 2379.2 操作文本 2389.2.1 使用字体函数 2399.2.2 使用字符串函数 2429.2.3 使用字符宏 2439.3 处理手写笔事件 2459.4 处理按键事件 2489.5 查找电话号码 2519.6 启动应用程序 2529.6.1 调用系统的应用程序启动器 2529.6.2 直接启动应用程序 2539.6.3 全局发送启动码 2559.6.4 创建自己的启动码 2559.7 产生随机数 2559.8 管理电源 2569.9 识别设备 2579.10 使用剪贴板 2589.11 总结 259第10章 图形和声音编程 26110.1 管理绘图区 26210.1.1 理解窗口 26210.1.2 保存和恢复绘图状态 26610.1.3 取得和设置色深 26710.1.4 使用颜色表 27110.2 绘制图形和文本 27310.2.1 设置传输模式 27310.2.2 设置前景色、背景色和文字颜色 27410.2.3 绘制像素 27510.2.4 绘制直线 27510.2.5 绘制矩形 27610.2.6 绘制文本 27910.2.7 绘制位图 27910.2.8 改变用户界面的颜色 28110.3 高分辨率屏幕编程 28410.3.1 使用高密度显示功能参数组 28410.3.2 检测可用的屏幕密度 28510.3.3 设置和取得坐标系统 28510.3.4 在坐标系统之间转换 28610.4 播放声音 28710.4.1 播放简单声音 28710.4.2 播放采样声音 28810.5 总结 290第11章 闹钟和时间编程 29111.1 设定闹钟 29111.1.1 设定一个闹钟 29211.1.2 响应闹钟 29311.1.3 响应其他启动码 29511.2 操作时间值 29611.2.1 获取和设定时间值 29611.2.2 转换时间值 29711.2.3 改变时间值 29811.3 遵循用户的日期和时间设置 29811.4 引起用户的注意 30011.4.1 请求注意 30111.4.2 响应提醒管理器 30311.4.3 管理引起注意的尝试 30611.4.4 阻止提醒指示器出现 30611.5 总结 306第12章 表格编程 30812.1 创建简单的表格 30912.1.1 理解表格如何工作 30912.1.2 初始化表格 31112.1.3 处理表格事件 32212.1.4 隐藏行和列 32212.2 创建更复杂的表格 32412.2.1 将表格与数据关联 32512.2.2 滚动表格 33912.2.3 处理表格的文本域 34912.3 总结 353第4部分 信息存储第13章 存取数据 35713.1 理解数据管理器 35713.1.1 记录数据库 35813.1.2 资源数据库 35913.2 数据库操作 36013.2.1 创建数据库 36013.2.2 打开数据库 36213.2.3 关闭数据库 36313.2.4 查找数据库 36313.2.5 删除数据库 36513.2.6 取得和修改数据库信息 36513.2.7 创建应用程序信息块 36813.3 存储应用程序配置 37113.4 使用功能内存 37413.5 总结 375第14章 操作记录 37714.1 使用记录 37714.1.1 深入Librarian例子程序的记录 37814.1.2 比较记录 38214.1.3 查找记录 38714.1.4 创建记录 38914.1.5 删除记录 39114.1.6 读取记录 39314.1.7 修改记录 39314.1.8 随版本更改数据库结构 40214.1.9 排序记录 40614.1.10 取得和修改记录信息 40714.1.11 分类记录 40814.1.12 实现私密记录 41514.1.13 调整记录大小 41614.2 使用资源 41614.2.1 查找资源 41814.2.2 创建资源 41914.2.3 删除资源 42014.2.4 读取资源 42014.2.5 取得和修改资源信息 42214.2.6 调整资源大小 42214.3 实现全局查找功能 42214.3.1 处理sysAppLaunchCmdSaveData 42314.3.2 处理sysAppLaunchCmdFind 42314.3.3 处理sysAppLaunchCmdGoto 42614.4 总结 429第15章 使用辅助存储器 43115.1 理解扩展管理器 43115.2 理解辅助存储器 43215.2.1 组织文件和目录 43315.2.2 运行辅助存储器上的程序 43315.3 使用虚拟文件系统 43415.3.1 检验VFS管理器的存在 43515.3.2 监测扩展卡的插入和拔出 43515.3.3 取得卷引用 43815.3.4 获取和设置卷标 43915.3.5 查找卷信息 44015.3.6 创建目录 44015.3.7 创建文件 44215.3.8 删除文件和目录 44415.3.9 打开和关闭文件 44715.3.10 取得和设置文件信息 44715.3.11 读取文件数据 44915.3.12 定位文件指针 45215.3.13 写数据到文件 45415.3.14 查找文件 45615.3.15 处理Palm OS数据库 45715.4 总结 458第5部分 手持设备的外部通信第16章 通过交换管理器共享数据 46316.1 使用交换管理器 46416.1.1 注册数据类型 46516.1.2 发送数据 46916.1.3 自定义数据接收对话框 48016.1.4 接收数据 48316.1.5 显示传送的记录 48916.1.6 调试传送功能 48916.1.7 发送应用程序和数据库 49016.2 理解红外库 49216.3 总结 493第17章 使用串口 49517.1 理解Palm OS串行通信 49517.2 使用串行管理器 49717.2.1 使用新式串行管理器 49817.2.2 使用旧式串行管理器 51017.3 总结 512第18章 网络通信 51418.1 理解TCP/IP网络 51418.2 用Palm OS网络库编程 51518.2.1 获得网络库引用 51718.2.2 打开网络库 51718.2.3 解析主机名和地址 51818.2.4 查找服务端口 52218.2.5 打开套接字 52418.2.6 连接套接字 52418.2.7 发送和接收数据 52518.2.8 断开套接字 52818.2.9 关闭套接字 52918.2.10 关闭网络库 52918.3 总结 530第19章 创建网页剪辑应用程序 53119.1 理解网页剪辑 53119.1.1 理解网页剪辑的安全性 53219.1.2 设计网页剪辑应用程序和网页剪辑 53319.2 构建网页剪辑应用程序 53419.2.1 组织HTML文件 53419.2.2 定义Header标签 53519.2.3 格式化文本 53619.2.4 链接到其他页面和应用程序 53719.2.5 构造查询表单 54119.2.6 添加图片 54519.2.7 使用网页剪辑应用程序构建器 54619.2.8 考察一个网页剪辑应用程序的例子 54819.3 生成网页剪辑 55019.3.1 定义Header标签 55019.3.2 为桌面浏览器创建剪辑页面 55119.3.3 链接到外部网页剪辑 55119.3.4 添加图片 55119.3.5 考察一个网页剪辑的例子 55219.4 测试网页剪辑应用程序 55519.5 总结 556第6部分 与桌面计算机同步第20章 学习管道基础 55920.1 理解管道 56020.2 设计管道 56320.3 安装管道 56420.3.1 手工安装管道 56420.3.2 创建自动管道安装 56720.4 在HotSync日志中记录动作 56920.5 总结 571第21章 创建管道 57221.1 使用管道向导 57221.1.1 选择管道类型 57321.1.2 选择手持端应用程序 57321.1.3 选择数据传输类型 57421.1.4 选择管道的功能特性 57421.1.5 确认类名和文件名 57521.2 实现管道入口点 57621.2.1 实现GetConduitInfo 57721.2.2 实现GetConduitName 57921.2.3 实现GetConduitVersion 57921.2.4 实现OpenConduit 57921.2.5 实现Configuration入口点 58221.3 使用Palm通用管道基础类 58721.3.1 遵循通用管道控制流 58821.3.2 描述桌面记录格式 58921.3.3 实现数据存储和读取 59121.3.4 CPalmRecord的数据转换 59821.3.5 同步应用程序信息块 60721.4 使用Palm MFC基础类 60721.4.1 遵循MFC管道控制流 60821.4.2 实现Monitor类 60921.4.3 实现Table类 61021.4.4 实现Schema类 61221.4.5 实现Record类 61321.4.6 实现Link Converter类 61621.5 使用同步管理器API 61821.5.1 注册和注销管道 61921.5.2 打开和关闭手持设备数据库 61921.5.3 遍历数据库记录 62121.5.4 读取和写入记录 62321.5.5 删除记录 62421.5.6 维持连接 62421.6 总结 625第7部分 高级主题第22章 导向轮编程 62922.1 Sony Jog Dial编程 63022.1.1 理解JogAssist 63222.1.2 绕过JogAssist工作 63322.2 HandEra Jog Wheel编程 63822.3 Treo Rocker Switch编程 63922.4 总结 640第23章 拾遗 64123.1 创建大型应用程序 64123.1.1 突破32KB的屏障 64123.1.2 将应用程序分段 64323.2 为应用程序增加自定义字体 64823.3 动态创建用户界面 65223.4 应用程序本地化 65423.5 使用文件流(File Streaming)API 65923.5.1 打开文件流 66023.5.2 关闭文件流 66223.5.3 获取文件流错误 66223.5.4 删除文件流 66223.5.5 在文件流中定位 66323.5.6 读写文件流数据 66323.6 总结 664术语表 665

媒体关注与评论

书评“现有最完备的Palm OS 5 参考大全——没读过就不要写代码!” ——JB Parrett,PalmSource首席软件开发师 利用新的工具、代码和应用软件释放Palm OS的全部能量!本书在第一版的基础上进行了全面改版和内容更新,让你能够掌握Palm OS 4和Palm OS 5的增强功能。通过阅读本书,你将学会使用蓝牙、短信和红外传递数据,通过Palm OS网络库探询TCP/IP通信的秘密,掌握日益流行的单手处理用户输入的技巧,并学习使用备受好评的FALCH.NET DEVELOPERSTUDIO来开发应用程序。无论你是Palm OS开发的新手还是资深的Palm OS开发高手,这本权威指南都能为你提供必备的Palm OS手持设备编程知识。


编辑推荐

利用新的工具,代码和应用软件释放Palm OS的全部能量!本书在第一版的基础上进行了全面改版和内容更新。让你能够掌握Palm OS 4和Palm OS 5的增强功能。通过阅读本书。你将学会使用蓝牙、短信和红外传递数据,通过Palm OS网络库探询TCP,IP通信的秘密,掌握日益流行的单手处理用户输入的技巧,并学习使用备受好评的Falch.net Developerstudio来开发应用程序。 本书着重介绍以C语言进行PalmOS开发,讲述Palm OS的工作原理,介绍开发工具,揭示编程技巧,将为你展示如何创建Palm OS应用程序,使之能够运行于Palm公司流行的系列产品以及其他使用Palm OS的广大第三方设备上。此外,本书中还将介绍如何创建网页剪辑程序,无论你是大公司的开发人员还是手持设备的发烧友,都会发现本书是Palm OS平台软件开发的宝贵指南。

图书封面

图书标签Tags

广告

下载页面


Palm OS编程宝典 PDF格式下载



palm的书本来就不多,也许是最后一本了吧,不过经典之作 收藏起来


书还没看,打算退休的时候再看


相关图书