内容简介
引言
本书适合的读者
本书的内容
第一篇 设计理想的程序第1章用户界面设计
1.1 了解一个好的用户界面
目录
本书的使用方法
本书的组织形式
CD上的内容
1.1.1 可视性强而又耐看的外观设计
1.1.2有助于轻松有效地学习
1.1.3允许用户出错
1.2 设计主应用程序窗口
1.2.1 工具栏
1.2.2状态栏
1.3 研究菜单
1.3.1 创建和组织下拉式菜单
1.3.2使用级联式和弹出式菜单
1.3.3在运行期间改变菜单
1.4.1模态
1.4 对话框
1.4.2消息框(MsgBox)和输入框(InputBox)
1.4.3公用对话框
1.5 设计新颖的对话框
1.5.1 对话框之间的调度
1.5.2标记式对话框
1.6.1命令按钮
1.6.2选择框和选项按钮
1.6 对话框控件
1.6.3列表框和组合框
1.6.4使用控件表示数值数据
1.6.5进程栏(Progress Bar)
1.7 快捷操作
1.7.1 应用菜单和命令按钮助记符
1.7.2实现快捷击键
1.7.3使用双击
1.8在运行期间帮助用户
1.10小结
1.9可用性测试
第2章多文档接口
2.1 MDI应用程序特性
2.2用Visual Basic创建MDI应用程序
2.3管理MDI应用程序中的图标
2.4 使用对象变量
2.4.1 New关键字
2.4.2 Me关键字
2.5.1.1 活动窗口
2.5.1 增加菜单
2.5 增强MDI应用程序
2.5.1.2 窗口列表
2.5.2增加工具栏
2.5.3增加状态栏
2.5.4改变窗体标题
2.5.5增加工具提示
2.6 图标选择程序的创建
2.6.1调整图标和窗口尺寸
2.7创建文本编辑器
2.8小结
第3章使用Windows API
3.1 理解Windows API
3.1.1 动态链接库
3.1.2 说明一个DLL例行程序
3.1.3 传递参数
3.1.3.1按值或引用传递参数
3.1.3.2使用次序号
3.1.3.3传递字符串
3.1.3.4传递结构
3.1.3.5 Win 32 API考虑事项
3.2 使用窗口控制函数
3.2.1 管理窗口
3.2.2获得窗口信息
3.2.3产生窗口的父子层次结构
3.3 引入菜单函数
3.3.1定制带位图的菜单
3.3.2使用弹出式菜单
3.3.3在菜单中显示位图
3.4.1 GDI对象——设备环境
3.4 图形函数
3.4.2创建和选择GDl对象
3.4.3用特殊效果显示位图
3.5 多媒体函数
3.5.1使用声音
3.5.2使用视频
3.5.3使用WinHelp函数
3.6.1图形例行程序
3.6 在Win 32系统下使用Windows API
3.6.2 DOS系统调用
3.7小结
第二篇 增加客户/服务器数据库功能
第4章先进的数据库前端
4.1 一个简单的前端
4.1.1从一个简单的数据输入窗体开始
4.1.2增加浏览键
4.2 多窗口前端
4.2.1使用框架创建页面
4.2.2 多窗体
4.2.3多文档接口(MDI)窗体
4.2.4链接各窗体的数据
4.2.5 最优化使用有效的屏幕空间
4.2.5.1收缩和移动窗体
4.2.5.2创建多页面
4.3 其他输入方法
4.3.1 使用其他控件
4.3.1.1从列表中选取项目
4.3.1.2使用单选按钮(Option Buttons)
4.3.1.3使用数字增减钮控件
4.3.2 使用数据约束网格
4.3.2.1建立数据约束网格
4.3.2.2 用网格作为主要的输入方法
4.3.2.3用户定义的查询
4.3.3 双栏选取列表(Two-Column Pick List)
4.4 输出方法
4.4.1 静态图形
4.5使用颜色
4.4.2 动态图形
4.6小结
第5章数据管理及数据驱动程序设计
5.1对数据管理的理解
5.2 使用数据库管理系统
5.2.1 实例解说
5.2.2 数据库设计
5.2.2.1确定数据需求
5.2.2.2 数据来源
5.2.2.3对表中数据分组
5.2.2.4数据规范化
5.2.2.5表的类型
5.2.3创建数据库
5.2.4输入数据
5.3数据有效性
5.3.1 引擎级有效性
5.3.2程序有效性
5.3.3 离线或批数据有效性
5.4数据完整性
5.6数据库维护
5.5结构化查询语言(SQL)
5.7.1建立输入表
5.7 高级数据管理概念
5.7.2 使用临时表
5.7.2.1创建临时表
5.7.2.2删除临时表
5.7.2.3把临时表放入单独的数据库
5.7.2.4用Clone方法复制
5.7.3输出数据表
5.7.4.1存贮多个事例
5.7.4 事例管理
5.7.4.2处理特定事例数据
5.7.4.3处理通用数据
5.7.4.4比较编程
5.7.5 数据驱动程序设计
5.7.5.1 传统的程序设计方法
5.7.5.2数据驱动程序设计方法
5.8小结
6.1 客户/服务器应用程序设计
第6章使用ODBC
6.2 理解ODBC
6.2.1ODBC结构
6.2.2 一致性级别
6.2.2.1 API一致性级别
6.2.2.2 SQL一致性
6.2.3单束式和多束式驱动程序
6.3配置ODBC
6.3.1 使用ODBC管理器
6.3.2使用RegisterDataBase方法
6.4 附加ODBC表
6.4.1选择数据源
6.5使用服务器数据
6.6活动查询
6.7在服务器数据库上创建表
6.8小结
第7章Jet引擎和ODBC
7.1 Jet引擎的组成部分
7.1.1数据访问对象
7.1.2 查询引擎
7.1.3 Jet数据库控制系统
7.1.4外部ISAM接口
7.1.5附加一张Excel 5.0电子表格
7.1.6 ODBC接口
7.2 ODBC数据库连接
7.2.1服务器上连接的管理
7.2.2客户机上连接的管理
7.2.3优化连接使用
7.3 附加的数据
7.3.1附加表
7.3.2附加视图
7.4查询处理
7.4.1ORDER BY
7.4.2 GROUPBY
7.4.3 TOP N
7.4.4查询的查询
7.4.5 LEFT JOIN
7.4.6 不同类的连接
7.5穿越查询
7.6小结
第8章现代客户/服务器计算技术
8.1了解计算机技术的历史
8.2客户
8.3 服务器
8.3.1文件服务器
8.3.2打印服务器
8.3.3 图形用户接口服务器
8.3.4图像服务器
8.3.5数据库服务器
8.3.6包装(Wrappered)服务器
8.4客户/服务器计算技术的优点
8.5理想系统的障碍
8.6 可行技术
8.6.1硬件
8.6.2中间件
8.7分布式对象
8.7.1 对象模型
8.7.1.1 通用对象请求者代理体系结构(CORBA)
8.7.1.2组件对象模型(COM)
8.7.1.3比较COM和CORBA
8.8客户/服务器计算技术的未来
8.9小结
第9章客户/服务器数据库
9.1客户/服务器数据库
9.3安装SQL Server
9.2 Microsoft SQL Server
9.4创建数据库
9.5创建表
9.6向表添加数据
9.7进行ODBC连接
9.8 访问SQL Server
9.8.1授予和回收权限
9.8.2附加表到Jet引擎数据库
9.9查询表
9.10用数据控件浏览SQL数据库表
9.11.1 从VisualBasic调用过程
9.11 存贮过程
9.12 小结
第10章SQL
10.1 SQL的全面概述
10.1.1 对面向集合的理解
10.1.2 基于SQL的应用程序的类型
10.2创建数据库
10.3 创建表
10.3.1 主码
10.4向表添加数据
10.5改变表的结构
10.6改变表中的数据
10.7删除数据和表
10.8 从表中检索数据
10.8.1 简单的WHERE子句
10.8.2 复合的WHERE子句
10.8.3 BETWEEN和NOT BETWEEN
10.8.4 LIKE和NOT LIKE
10.8.5 IN和NOT IN
10.8.6 IS NULL和IS NOT NULL
10.8.7 ORDER BY
10.8.8计算得到的列
10.9连接表
10.10小结
第三篇增强应用程序
第11章OLE自动化
11.1 OLE的定义
11.1.1文档核心计算技术
11.1.2部件软件
11.1.3 OLE术语
11.2 什么是OLE自动化
11.2.1 OLE自动化对象
11.3 OLE和系统注册数据库
11.4 对象链接和嵌入
11.4.1 链接的对象
11.4.2嵌入的对象
11.4.3就地激活
11.4.4.1 设计阶段的OLE控件
11.4.4 VB的OLE控件
11.4.4.2 运行阶段的OLE控件
11.5 用OLE自动化管理对象
11.5.1 创建一个新对象
11.5.2链接已存在的对象
11.5.3 处理对象
11.5.3.1 访问对象的属性
11.5.4关闭对象
11.5.3.2执行方法
11.6 限制
11.6.1 数组和用户自定义类型
11.6.2命名参数
11.6.3集合
11.7小结
第12章OLE服务器
12.1 什么是OLE服务器
12.1.1服务器的类型
12.2 VisualBasic OLE自动化对象
12.2.1部件对象模型
12.1.2 Visual BasicOLE服务器
12.2.2 Visual Basic类
12.2.3设计一个对象层次结构
12.3 在Visual Basic中创建一个OLE服务器
12.3.1 增加类
12.3.1.1类的Public属性
12.3.1.2 类的可创建性属性
12.3.2 定义Public的方法和属性
12.3.2.1 Calc类
12.3.2.2 Picture类
12.3.2.3有关作用域的问题
12.3.2.4初始化代码
12.3.2.5 Application对象
12.3.3 完成创建的OLE服务器
12.3.3.1 开发用户界面
12.3.3.2选择项目选项
12.3.3.3运行应用程序
12.4 使用Visual BasicOLE服务器
12.4.1 注册OLE服务器
12.4.2从系统登记簿删除一个对象应用程序
12.4.3启动一个对象应用程序
12.5 调试你的对象应用程序
12.5.1运行多个应用程序版本
12.5.2将控制者中的引用指向应用程序
12.6标准和准则
12.6.1标准对象
12.6.2 必需的属性
12.6.2.1集合方法
12.6.2.2Item方法
12.6.2.4 Remove方法
12.6.2.3 Add方法
12.6.3 Application对象的属性和方法
12.6.4命名准则
12.7小结
第13章OLE容器类
13.1 什么是OLE客户
13.2 OLE控件和客户
13.2.1方法(Method)
13.2.2属性(Property)
13.3 嵌入
13.2.3事件(Events)
13.3.1使用剪贴板
13.4链接
13.4.1使用剪贴板
13.5用剪贴板粘贴特殊对象
13.6动词(Verb)
13.7 控制应用程序
13.7.1 自动使用对象
13.7.2 自动使用OLE控件
13.8小结
第14章媒体控制接口
14.1 多媒体系统
14.1.1 用于开发的硬件
14.1.2 用于播放的硬件
14.1.3开发软件
14.2 多媒体控制接口的操作
14.2.1 音频CD设备
14.2.2动画
14.2.3声波文件
14.3 多媒体的术语
14.2.4图形图象
14.2.5其他多媒体设备
14.3.1什么叫CD轨迹(Track)
14.3.2时间索引
14.3.3采样
14.3.4什么叫帧
14.3.5使用视频压缩
14.3.6图像压缩
14.4.2TimelFormat属性
14.4.1DeviceType属性
14.4 多媒体控制接口的命令
14.4.3Position属性
14.4.4From/To属性
14.4.5处理轨迹信息
14.4.6 Mode属性
14.4.7 Command属性
14.4.8 Notify属性和Done事件
14.4.9 UpdateInterval属性和StatusUpdate事件
14.5.1音量控制
14.5 超越Visual Basic MCI控件——使用多媒体API
14.5.2 多媒体DLL命令字符串
14.6小结
第15章多媒体的应用
15.1多媒体MCI控件
15.2 用CD Jammer样例程序进行播放
15.2.1选择按钮控件
15.2.2使用轨迹访问控件
15.2.4 CD Jammer的特性
15.2.3数据库访问控件
15.2.4.1 CD的自动识辨
15.2.4.2 制作动态片头屏幕
15.2.4.3发声控制
15.2.4.4使用LED类型的显示
15.3 小结
第16章图形:数据分析
16.1 增强用户界面
16.1.1 使用线(Line)和形状(Shape)控件
16.1.2 窗体中的图片
16.1.2.1在窗体中装载图片
16.1.2.2使用图像(Image)控件
16.1.2.3使用图片框(PictureBox)控件
16.1.3在窗体中创建不可见按钮
16.1.4 用图像(Image)控件创建工具栏
16.1.4.1创建工具栏
16.1.4.2处理多态按钮
16.1.4.3动画按钮
16.1.5.1设置PicClip控件
16.1.5 用图片剪切(PicClip)控件管理图片
16.1.5.2使用随机访问方法
16.1.5.3使用数举方法
16.1.6 使用动态按钮(Animated Button)控件
16.2 创建和管理图形
16.2.1 创建图形
16.2.1.1使用Line方法
16.2.1.2使用Circle方法
16.2.1.3使用Pset方法
16.2.1.4使用PaintPicture方法
16.2.1.5使用Print方法
16.2.1.6 Point和Cls方法
16.2.2 便笺簿应用程序
16.2.2.1建立工具栏
16.2.2.2使用各种画图工具
16.2.2.3创建复原(Undo)特性
16.2.2.4 保存图片
16.2.3位图注解
16.3 用图形分析数据
16.2.4使用数据库存储图片
16.3.1 使用图形(Graph)控件分析数据
16.3.2 创建你自己的数据分析图形
16.3.2.1 创建一简单的图表
16.3.2.2使用用于不同图表类型的方法
16.3.2.3确定点在图表中的位置
16.3.2.4动态(或时间相关)图表
16.4小结
第17章通信基础
17.1 串行通信
17.1.1通信硬件
17.1.2协议
17.2串行卡
17.3 通信控件
17.3.1设计期间的属性
17.3.2运行期间的属性
17.4 调制解调器和AT命令设置
17.4.1对调制解调器编程
17.4.2调制解调器寄存器
17.5小结
第18章开发联机帮助
18.1 了解Windows帮助系统
18.1.1 了解帮助系统的术语
18.1.2 从VisualBasic菜单中调用帮助
18.1.2.1控制帮助系统操作
18.1.2.2运用Windows公用对话框
18.1.2.3使用Windows API调用
18.1.3 链接上下文关联的帮助
18.2.1 策划文档编制
18.2 创建你的帮助项目
18.1.3.1 映像上下文字符串和HelpContextID
18.2.2加入帮助编译器代码
18.2.3 为查找建索引
18.2.4 加入浏览序列
18.2.5分配建立标记
18.2.6 将主题与跳转及弹出文本相链接
18.2.6.1 跳转到位于其他帮助文件中的主题
18.2.6.2跳转到二级窗口
18.3 标识帮助项目部件
18.3.2 了解帮助项目文件
18.3.1使用具有热点的位图和图形
18.4 创建帮助项目文件
18.4.1使用项目文件节
18.4.2设置其他的编译器选项
18.4.3 使用Microsoft帮助编译器
18.4.3.1 判断和调试编译器错误
18.4.3.2测试编译过的帮助文件
18.5 使用帮助引擎特性
18.5.1设置附加菜单
18.5.2附加额外的按钮
18.5.3 使用定制的DLL
18.6小结
第19章网络应用程序
19.1 了解网络应用程序的设计特征
19.1.1保证数据一致性
19.1.2允许对数据库进行同时访问
19.1.3安全与备份
19.1.4性能和调试
19.2 对等网络的使用
19.2.1使应用程序能在网络上运行
19.2.2从客户端连接
19.2.3拓宽对等连网的功能
19.3 使用专用文件服务器的网络
19.3.1 专用文件管理器网络上的应用程序共享
19.4 桌面数据库的使用
19.4.1 为数据库设置安全性
19.4.2激活登录过程
19.5.1 创建一个新的管理员账户
19.5 工作组数据库的使用
19.5.2修改数据库和对象的所有权
19.5.3 创建和管理用户和组账户
19.5.4分配和取消权限
19.5.5加密数据库
19.6使用客户/服务器数据库
19.7 锁定级别
19.7.1 页面锁定
19.7.2记录集锁定
19.7.3 数据库锁定
19.7.3.1 积极锁定
19.7.3.2 消极锁定
19.8小结
第20章OLE控件、Add-In和32位DLL
20.1在32位环境下工作
20.2 OLE控件
20.2.1 Farpoint技术公司
20.2.2 VideoSoft
20.2.3 Sylvain Faust公司(SFI)
20.2.4 Lenel系统国际公司
20.2.5 MicroHelp公司
20.2.6 AccuSoft公司
20.3 OLE自动化服务器
20.3.1衍生代码
20.3.2 理解类
20.3.2.1 创建一个类的实例
20.3.2.2 自组合引起的潜在的递归
20.3.2.3检查模块文件
20.3.3设置项目选项
20.3.4建立Add-In应用程序
20.3.5使Add-In有效
20.4 32位动态链接库
20.4.1单一码的混淆
20.4.2调整用户自定义类型
20.4.3 用Visual C++建立支持单一码的DLL
20.4.3.1 使用Byte数组技术
20.5小结
第21章VB代码的优化
第四篇 检验应用程序的效率
21.1 测量程序性能
21.1.1 测量程序速度
21.1.2测量程序大小
21.2 改善对象的性能
21.2.1 显示/隐藏与装载/卸载
21.2.2反馈给用户
21.2.3 AutoRedraw属性
21.3.1.1 图片框与图像控件
21.3.1 LoadPicture方法
21.3 改善图形的性能
21.3.1.2装载与嵌入图片
21.4 改善代码性能
21.4.1 内存的类型及其大小
21.4.2 显式的变量说明
21.4.3 固定长度字符串与可变长度字符串
21.4.4 固定长度数组与可变长度数组
21.4.5调用一个动态链接库的例行程序
21.4.6标签(Label)控件与文本框(Text Box)控件
21.5.2设置级别处理
21.5.1 索引
21.5改善数据库性能
21.6小结
第22章VB与VBA
22.1 比较Visual Basic 4和VBA之间的不同之处
22.2 总结语法差别
22.2.1 理解公共语法
22.2.1.1 分析Word 7语法差别
22.2.1.2分析Microsoft Access 2语法差别
22.2.2 理解Visual Basic 4的外延性
22.2.1.3分析Excel 7和Project 4差别
22.2.2.1 使用Command关键字
22.2.2.2在VB中使用设备环境
22.2.2.3在VB中使用对象引用
22.2.3比较环境差别
22.3 回顾对象差别
22.3.1比较Visual Basic和VBA窗口对象
22.3.2 比较Visual Basic和VBA控件对象
22.3.2.1评估控件事件差别
22.3.2.2评估控件属性和方法差别
22.4.1 使用ODBC设施
22.4 注意数据库访问的差别
22.4.2 使用DAO模型设施
22.4.2.1 在VBA中引用DAO 2.5库
22.4.2.2 测试DAO 2.5对象库引用
22.4.3 使用OLE定制控件
22.4.3.1 注册OLE定制控件
22.4.3.2 用OLE定制控件编程
22.5 在VB和VBA之间移植代码
22.6 使用VB类库
22.5.1 处理事件限制
22.5.2转换属性
22.6.1 开发和利用部件
22.7小结
第23章使用DLL的混合语言开发
23.1 什么是动态链接库
23.1.1静态链接
23.1.2动态链接
23.2.2 第三方产品
23.2.1 Windows APl
23.2 在VB中使用DLL
23.2.3 定制DLL
23.3一个简单的Windows资源监视器
23.4通过Windows APl调用来设置控件的属性
23.5 Declare语句
23.5.1语法
23.5.2命名转出过程
23.5.3 使用别名
23.5.3.3 DLL过程的次序号
23.5.3.2重复标识符
23.5.3.1 无效过程名
23.5.4DLL以及Windows的搜索路径
23.5.5 参数列表
23.5.5.1按引用传递参数
23.5.5.2按值传递参数
23.6函数与子例程的比较
23.7 数据类型间的转换
23.7.1 比较C和VB的数据类型
23.7.3传递数组
23.7.2 处理变体类型(Variant)
23.7.4 处理字符串
23.7.5 内存缓冲区和二进制数据
23.7.6处理用户自定义类型
23.7.7传递参数给DLL过程
23.8用Windows API来绘图
23.9 调试技巧
23.9.1 检查Declare语句
23.9.2检查过程调用
23.9.5 DLL可能会导致Windows崩溃
23.9.6考虑堆栈空间
23.9.3双重检验数组
23.9.4检查路径
23.10使用INI文件
23.11 实用样例
23.11.1等待一个外壳进程结束
23.11.2使一个窗口保持在顶层
23.11.3调用Windows帮助文件
23.12小结