第一部分 V B 6考试的基本概念 1
第0章 导言 1
0.1此书如何帮助应试者 1
0.2使用Microsoft Visual Basic 6.0设计和实现分布式应用程序考试所涉及的内容 3
0.3使用Microsoft Visual Basic 6.0考试(70-176)设计和开发桌面式应用程序考试所涉及的内容 7
第1章 开发基本设计和逻辑设计并由此进入物理设计 15
1.1简介 16
1.2微软应用程序开发概念的概述 16
1.3 VB企业开发模块 17
1.3.1基本设计 17
1.3.2由基本设计导出逻辑设计 18
1.3.3从逻辑设计导出物理设计 19
1.3.4认识到逻辑设计对物理设计的影响 19
1.4为多平台应用程序设计VB数据访问组件 22
1.5设计组件的属性、方法和事件 23
1.5.1设计组件的属性 23
1.5.2设计组件的方法 24
1.5.3设计组件的事件 24
1.5.4实现装载平衡 24
1.6案例分析:营销订单输入系统 25
1.7本章小结 26
1.8.2考试题 27
1.8检查自己所学的知识 27
1.8.1复习题 27
1.8.3复习题答案 30
1.8.4考试题答案 30
第2章 建立开发环境 32
2.1简介 33
2.2使用Visual SourceSafe实现源代码控件 33
2.2.1 Visual SourceSafe工程的特点 34
2.2.2 Visual SourceSafe Database 34
2.2.3 Visual SourceSafe Administrator 34
2.3.5 VSS Explorer 39
2.3为开发桌面式和分布式应用程序安装和设置VB 51
2.4本章小结 52
2.5检查自己所学的知识 53
2.5.1练习2.1:使用VSS Administrator 53
2.5.2练习2.2:VB环境下使用SourceSafe 53
2.5.3练习2.3:使用VSS Explorer 54
2.5.4练习2.4:在VSS Administrator中给工程存档及将其调出 55
2.5.5练习2.5:了解VB的特点 56
2.5.6复习题 56
2.5.7测验题 56
2.5.9考试题答案 58
2.5.8复习题答案 58
第3章 实现导航设计 60
3.1简介 61
3.2了解菜单的基本知识 61
3.2.1了解菜单术语 62
3.2.2 Menu Editor的使用 63
3.2.3为菜单项的Click事件编写代码 63
3.3动态修改菜单的外观 63
3.4为应用程序添加弹出菜单 64
3.4.1定义弹出菜单 64
3.4.2确定鼠标按钮 65
3.4.3显示弹出菜单 66
3.4.4弹出菜单所用的控件 67
3.5创建能实时添加和删除菜单的应用程序 67
3.5.1创建实时菜单项 67
3.5.2为实时菜单项编定代码 68
3.5.3删除实时菜单项 69
3.5.4将控件添加到窗体 70
3.6为CommandButtons, TextBoxes和Labels基本控件设置属性 70
3.6.1在代码中使用属性 72
3.6.2三种基本控件一些重要的共同属性 72
3.6.3通过Label的Caption属性为Text Box控件指定访问键 75
3.6.4 Command Button控件的重要属性 76
3.6.5 TextBox控件的重要属性 77
3.6.7 Label控件的重要属性 78
3.7为控件添加代码以响应特定的事件 78
3.7.1为事件过程编定完代码后改变控件的名字 79
3.7.2 Click事件 80
3.7.3 DblClick事件 81
3.7.4 MouseUp和MouseDown事件 81
3.7.5鼠标事件与Click和Dblclick事件的比较 82
3.7.6其他用来作输入验证的事件 83
3.8本章小结 83
3.9.1练习3.1:创建一个简单的菜单 84
3.9检查自己所学的知识 84
3.9.2练习3.2:动态修改菜单形象 85
3.9.3练习3.3:给应用程序添加弹出菜单 87
3.9.4练习3.4:创建能实时添加和删除菜单的应有程序 88
3.9.5练习3.5:测试控件的事件 90
3.9.6练习3.6:使用共同的控件属性 94
3.9.7复习题 95
3.9.8考试题 95
3.9.9复习题答案 98
3.9.10测验题答案 99
第4章 创建数据输入窗体和对话框 101
4.1简介 102
4.2添加ActiveX控件到工具框 103
4.3使用ActiveX控件创建数据输入窗体和对话框 103
4.3.1使用ImageList控件 103
4.3.2使用TreeView控件 107
4.3.3使用ListView控件 111
4.3.4使用ToolBar控件 117
4.3.5使用StatusBar控件 121
4.3.6使用Controls Collection(集合) 124
4.3.7动态地添加和删除控件的技巧 126
4.3.8有关创建数据输入窗体和对话框的详细内容 135
4.3.9使用Forms Collection(集合) 139
4.4本章小结 142
4.5检查自己所学的知识 143
4.5.1练习4.1:使用ListView和ImageList控件 143
4.5.2练习4.2:使用TreeView控件 145
4.5.3练习4.3:创建工具栏控件 146
4.5.4练习4.4:创建状态栏 147
4.5.5练习4.5:使用Controls集合 148
4.5.6练习4.6:窗体的调入和反调 148
4.5.7练习4.7:使用Forms集合 151
4.5.8练习4.8:使用控件组合动态地添加和删除控件 152
4.5.9练习4.9:使用集合动态地添加和删除控件 155
4.5.10复习题 158
4.5.11测验题 159
4.5.12复习题答案 165
4.5.13测试题答案 166
第5章 编写代码以验证用户输入 170
5.1域级和窗体级的敲键事件 171
5.1.1 KeyPress事件 172
5.1.2 KeyUp和KeyDown事件 173
5.1.3 KeyPress与KeyUp和KeyDown 174
5.1.4使用窗体的KeyPreview属性启用双平台验证 174
5.2.2 Validate事件 175
5.2域级验证技巧 175
5.2.1 Validate事件及CausesValidation属性 175
5.2.3 CausesValidation属性 176
5.2.4 Change事件和单击事件 177
5.2.5使用GotFocus和LostFocus事件验证的老式技巧 177
5.3根据输入启用控件 178
5.4各种不同的验证属性 179
5.4.1 Maxlength 179
5.4.2数据绑定属性 179
5.4.3案例分析:一个属简单的数据输入窗体 179
5.6.1练习5.1:域级和窗体级的敲键事件 181
5.6检查自己所学的知识 181
5.5本章小结 181
5.6.2练习5.2:域级验证技巧 184
5.6.3练习5.3:选择性启用的控件 186
5.6.4复习题 189
5.6.5测验题 189
5.6.6复习题答案 190
5.6.7测验题答案 191
第6章 编写代码以处理窗体上输入的数据 193
6.1简介 194
6.2窗体事件的相关时间 194
6.3.2 Load事件和Activate事件 195
6.3 Initialize, Load和Activate事件 195
6.3.1 Initialize事件 195
6.4 eActivate, UnLoad, QueryUnLoad和Terminate事件 197
6.4.1 DeActivate事件 197
6.4.2 QueryUnload事件 197
6.4.3 Unload事件 198
6.4.4 Terminate事件 199
6.5 Activate/DeActivate事件与GotFocus/LostFocus事件 199
6.6 Show/Hide方法与Load/UnLoad语句 199
6.7在MDI应用程序中使用UnLoad和QueryOnload事件 200
6.8.2 Show和Hide方法 201
6.8.1窗体的隐含调入 201
6.8 Form方法及其对Form事件的影响 201
6.9利用另一个窗体的Load事件过程操作窗体 202
6.10本章小结 204
6.11检查自己所学的知识 205
6.11.1练习6.1:测试主窗体事件 205
6.11.2练习6.2:具有登录安全性的多窗体数据输入系统 207
6.11.3复习题 209
6.11.4考试题 210
6.11.5复习题答案 212
6.11.6测验题答案 213
第7章 在分布式应用程序中实现联机用户服务 215
7.1 Help文件的两个类型 216
7.1.1 HTMLHelp文件 216
7.1.2 WinHelp文件 217
7.2在应用程序中通过HelpFile属性引用Help 217
7.2.1设计时设置Help文件 218
7.2.2实时设置Help 文件 218
7.3窗体和控件的环境相关帮助 219
7.3.1使用HelpContextID属性的环境相关帮助 219
7.3.2为应用程序添加工具提示(ToolTips) 220
7.3.3 在应用程序中提供WhatsThis Help 221
7.4.2使用HTML Help Workshop创建和编译THML Help工程 224
7.4创建HTML Help 224
7.4.1 HTML Help源文件结构 224
7.5本章小结 239
7.6检查自己所学的知识 240
7.6.1复习题 246
7.6.2考试题 246
7.6.3复习题答案 247
7.6.4测验题答案 248
第8章 创建数据服务(第一部分) 250
8.1简介 251
8.2 OLE DB和ADO概述 251
8.2.1 ADO和ADO对象模型 252
8.3使用自动数据绑定工具编程 253
8.3.1使用Data Enironment Designer管理ADO对象 253
8.4使用ADO以及ADO数据控件访问数据 262
8.4.1使用ADO数据控件 262
8.4.2用ADO Data Control编辑现有的记录 270
8.4.3对ADO编程 272
8.5使用ADO的Errors集合 290
8.6本章小结 290
8.7检查自己所学的知识 291
8.7.1练习8.1:对ADO对象模型编程 291
8.7.2练习8.2:利用数据环境设计器把对象绑定给数据 297
8.7.3练习8.3:使用ADO数据控件为数据绑定对象 301
8.7.4复习题 305
8.7.5测试题 305
8.7.6复习题答案 308
8.7.7测试题答案 308
第9章 创建数据服务(第二部分) 310
9.1简介 312
9.2 ADO数据访问模型 312
9.2.1使用Execute Direct模型访问数据 312
9.2.2使用Prepare/Execute模型访问数据 314
9.2.4怎样选择数据访问模型 315
9.2.3使用Stored Procedures模型访问数据 315
9.3使用存储过程 316
9.3.1创建存储过程 317
9.3.2使用Parameter集合操作和估计存储过程的参数 318
9.3.3使用存储过程来执行有关数据库的语句 320
9.3.4使用存储过程为应用程序返回记录 325
9.4使用光标 326
9.4.1使用光标定位 327
9.4.2使用光标类型 328
9.5管理数据库事务 329
9.6.1编写回取和修改数据的SQL语句 332
9.6编写SQL语句 332
9.6.2编写使用连接(Join)的SQL语句对多个表的数据进行组合 334
9.7使用锁定策略保证数据的完整性 335
9.8选择光标选项 336
9.9本章小结 336
9.10检查自己所学的知识 337
9.10.1练习9.1:SQL的使用 337
9.10.2练习9.2:创建存储过程 340
9.10.3练习9.3:对Execute Direct和 Prepare/ExeCute数据访问模型编程 344
9.10.4练习9.4:对Stored Procedures数据访问模型编程 348
9.10.5练习9.5:对光标定位,光标类型和锁定策略进行编程 359
9.10.6练习9.6:管理数据库事务 362
9.10.7复习题 365
9.10.8测试题 366
9.10.9复习题答案 370
9.10.10测验题答案 371
第10章 例示和调用COM组件 374
10.1介绍 375
10.2 COM、AUTOMATION(自动化)及ActiveX 376
10.3创建使用COM组件的VISUAL BASIC应用程序 377
10.3.1设置到COM组件的引用 378
10.3.2使用Object Browser查找COM组件的对象模型 379
10.3.3用New关键字说明和例示COM组件中的类对象 380
10.3.5在说明对象后用New来例示它 381
10.3.6对象变量的先和后捆绑 381
10.3.4当你说明对象变量时使用As New来例示对象变量 381
10.3.7使用CreateObject和GetObject函数例示对象 383
10.3.8使用组件服务器的对象模型 384
10.3.9使用组件的方法和属性 385
10.3.10释放对象的实例 386
10.3.11检测变量是否被例示 386
10.3.12处理COM组件的事件 386
10.3.13案例分析:使用EXCEL和WORD的借贷处理应用程序 388
10.4本章小结 389
10.5.2练习10.2:后捆绑变量与先捆绑变量 390
10.5检查自己所学知识 390
10.5.1练习10.1:定义并初始化对象变量 390
10.5.3练习10.3:利用CreateObject函数创建对象 392
10.5.4练习10.4:利用GetObject函数获得对象引用 392
10.5.5练习10.5:使用WithEvents 394
10.5.6复习题 396
10.5.7考试题 397
10.5.8复习题答案 398
10.5.9考试题答案 399
第11章 在应用程序中实现错误处理特性 401
11.2设置出错处理选项 402
11.1简介 402
11.2.1设置Break on All Errors 403
11.2.2设置Setting Break in Class Modules 403
11.2.3设置Break on Unhandled Errors 404
11.3使用ERR对象 404
11.3.1 Err对象的属性 404
11.3.2 Err对象的方法 407
11.3.3使用vbObjectError常数 408
11.4在代码中处理错误 408
11.4.1使用On Error语句 408
11.4.2内联出错处理 410
11.4.3错误-处理程序 411
11.4.4可捕捉错误 412
11.5使用错误-处理分层结构 413
11.6公用错误处理程序 415
11.7用错误函数 418
11.8使用Error(错误)语句 418
11.9内联出错处理 418
11.10本章小结 420
11.11检查自己所学的知识 420
11.11.1练习11.1:出错处理层次结构 420
11.11.2练习11.2:捕捉特定的错误 421
11.11.3练习11.3:处理错误内联 422
11.11.4复习题 423
11.11.5考试题 424
11.11.6复习题答案 426
11.11.7考试题的答案 426
第12章 创建实现事务规则或逻辑的COM组件 428
12.1简介 430
12.2 COM组件程序设计的概述 430
12.2.1 COM规格说明和ActiveX标准 431
12.2.2比较In-process和Out-of-Process服务器组件 431
12.3创建COM组件的步骤 432
12.2.4灵活性和可用性:Out-of-Process服务器组件赢得竞争 432
12.2.3性能:In-process服务器组件赢得竞争 432
12.4利用COM组件实现事务规则 433
12.5用COM组件实现对象模型 434
12.6通过类模块实现COM组件 434
12.6.1类模块的使用 434
12.6.2在标准的EXE项目开始一个类(Class)模块 435
12.6.3类模块Name(名字)属性 435
12.6.4在类模块实现定制方法 437
12.6.5在类模块中实现定制属性 438
12.6.4在类模块实现定制事件 440
12.6.5类模块的内置事件 442
12.6.6在集合中保存对象的多个实例 444
12.6.7建立依赖类 445
12.6.8建立依赖集合类 445
12.6.9在依赖集合类实现内置的集合特性 445
12.6.10在你的应用程序中说明和使用类模块对象 447
12.6.11操作Class对象属性和方法 448
12.6.12处理Class事件 448
12.7管理COM组件中的线程 450
12.7.1在ActiveX控件和In-Process组件中管理线程 450
12.7.2管理Out-of-Process组件中的线程 450
12.8.2对依赖类使用Public不可创建实例 452
12.8 COM组件类的示例属性 452
12.8.1对服务类使用专有实例 452
12.8.3外部可创建的类的Instancing属性设定 453
12.8.4对每个对象的单独实例使用SingleUse Instancing 453
12.8.5使用GlobalSingleUse以避免显式对象创建 454
12.8.6为对象共享使用MultiUse Instancing 455
12.8.7使用GlobalMultiUse Instancing以避免显式对象创建 455
12.8.8在SingleUse和MultiUse服务器类之间决定 455
12.9处理服务器和客户中的错误 455
12.9.1把结果代码传送给客户 456
12.9.2引出一个错误传回客户 457
12.10利用Visual Component Manager管理组件 458
12.10.1在Repository数据库存储VCM信息 458
12.10.2使VCM在VB IDE中可用 458
12.10.3利用VCM发布组件 460
12.10.4利用VCM查找和重用组件 465
12.11使用接口实现多态性 467
12.11.1实现Interface类的步骤 468
12.11.2创建Interface类 468
12.11.3在其他类中实现Interface类 469
12.11.4在客户使用Interface类的方法 470
12.12提供异步回调 475
12.12.1为回调对象提供接口 476
12.12.2在客户实现回调对象 476
12.12.3在服务器中使用回调对象 477
12.13注册COM组件和未注册 479
12.13.1注册/未注册Out-of-Process组件 479
12.13.2注册/未注册In-Process组件 479
12.14从COM组件把消息传送给用户 480
12.14.1管理Out-of-Process服务器组件中的窗体 480
12.14.2管理In-Process服务器组件中的窗体 480
12.15选择正确的COM组件类型 481
12.17 COM组件的UNDER-THE-HOOD信息 482
12.16通过实例和线程模型实现可伸缩性 482
12.18本章小结 483
12.19检查自己所学知识 484
12.19.1练习12.1:使用类模块创建实现事务逻辑的对象模型的COM组件 484
12.19.2练习12.2:为COM组件设置线程模型 487
12.19.3练习12.3:在COM组件内控制类的实例 488
12.19.4练习12.4:从COM组件返回错误信息 488
12.19.5练习12.5:使用Visual Component Manager 490
12.19.6练习12.6:为异步处理实现回调过程 490
12.19.7练习12.7:注册COM组件和未注册 494
12.19.8复习题 495
12.19.9考试题 496
12.19.10复习题答案 504
12.19.11考试题答案 505
第13章 创建ActiveX控件 508
13.1简介 509
13.2 ActiveX控件概念的概述 510
13.2.1作为ActiveX组件的ActiveX控件 510
13.2.2从成份控件创建ActiveX控件 511
13.2.3创建用户描画的ActiveX控件 511
13.3 ActiveX控件的生存期 511
13.5创建暴露属性的ActiveX控件的步骤 512
13.4对ActiveX控件的开发专门考虑 512
13.5.1 UserControl对象 513
13.5.2实现用户-描画的图形特性 518
13.5.3实现定制方法 519
13.5.4实现定制事件 520
13.5.5实现定制属性 521
13.5.6实现属性持久性 523
13.6创建知道数据的ACTIVEX控件 534
13.6.1允许ActiveX控件的数据-捆绑能力 534
13.6.2创建和启动ACTIVEX控件的属性页 538
13.6.3创建PropertyPage对象的可视接口 539
13.6.5使用SelectionChanged事件检测何时开发者开始编辑属性 540
13.6.4利用SelectedControls集确定选定哪一个控件进行编辑 540
13.6.6利用Changed属性标记属性变化 541
13.6.7利用ApplyChanges事件存储属性变化 541
13.6.8把定制控件连接到Property Page(属性页) 542
13.6.9把单独的复杂属性连接到属性 543
13.6.10利用EditProperty事件检测哪个Complex Property正在被编辑 544
13.6.11把属性连接到标准的VB属性页 544
13.7测试和调试ActiveX控件 545
13.7.1利用现有的容器应用程序测试你的ActiveX控件 545
13.7.2在测试工程测试和调试你的ActiveX控件 546
13.7.4案例分析:为货币量需求提供标准接口的ActiveX控件 549
13.7.3当测试你的ActiveX控件时寻找什么 549
13.8本章小结 551
13.9检查自己学过的知识 552
13.9.1练习13.1:创建一个ActiveX控件 552
13.9.2练习13.2:测试和调试ActiveX控件 552
13.9.3练习13.3:使用控件事件保存和加载永久属性 553
13.9.4练习13.4:创建Property Page(属性页) 554
13.9.5练习13.5:启动ActiveX控件的数据-捆绑能力 555
13.9.6练习13.6:创建是Data Control(数据源)的ActiveX控件 556
13.9.8考试题 560
13.9.7复习题 560
13.9.9复习题的答案 563
13.9.10考试题的答案 563
第14章 创建Active Document(活动文档) 566
14.1简介 567
14.2活动文档的概述和定义 568
14.3实现活动文档的步骤 568
14.4设置UserDocument 569
14.4.1把现有项目转换成活动文档 569
14.4.3在活动文档EXE和活动文档DLL间选择 570
14.5在容器应用程序运行你的活动文档 570
14.4.2创建活动文档项目 570
14.5.1利用TypeName函数和UserDocument.Parent检测容器的类型 571
14.6在你的活动文档生存期内管理事件 572
14.6.1 InitProperties事件 572
14.6.2 EnterFocus事件 573
14.6.3 Show事件 573
14.6.4 ReadProperties事件和ReadProperty方法 573
14.6.9 Hide(隐藏)事件 574
14.6.10 Terminate(终止)事件 574
14.6.8 ExitFocus事件 574
14.6.7WriteProperties事件和WriteProperty方法 574
14.7管理活动文档滚动 575
14.7.1 Scrollbars属性及MinHeight和MinWidth属性 575
14.7.2 HscrollSmallChange和VscrollSmallChange属性 576
14.7.3 Scroll事件过程和ContinuousScroll属性 576
14.7.4管理活动文档的ViewPort(视口) 576
14.7.5 ViewPort Coordinate(坐标)属性 576
14.7.6 SetViewPort方法 579
14.8定义活动文档的定制成员 579
14.9活动文档中数据和属性持久保持 580
14.9.1把信息存储在vbd文件 580
14.9.2数据Preservation(保存)事件和属性袋 581
14.10.1用AsyncRead方法开始下载 582
14.10信息的异步下载 582
14.10.2使用CancelAsyncRead方法停止下载 583
14.10.3用AsyncReadComplete事件反应下载的完成 583
14.11定义活动文档菜单 584
14.11.1对活动文档菜单的设计考虑 584
14.11.2与容器菜单协商 584
14.11.3合并你的帮助菜单与容器的帮助菜单 585
14.12在活动文档项目中非模态窗体的限制 586
14.13在容器应用程序中的文档之间导航 587
14.13.1对知道Internet的容器使用超级链接对象 587
14.13.3编写应用程序处置不同的容器导航风格 588
14.13.2导航容器App的对象模型 588
14.13.4利用多个UserDocument对象创建ActiveX项目 589
14.14在VB设计环境测试活动文档 591
14.15编译和发布你的活动文档 593
14.16在WEB页使用你的活动文档 594
14.17本章小结 595
14.18检查自己所学的知识 596
14.18.1练习14.1:与容器交互和在文档间导航 596
14.18.2练习14.2:使活动文档永久保持 598
14.18.5考试题 600
14.18.4复习题 600
14.18.3练习14.3:把活动文档增加到Web网页 600
14.18.6复习题的答案 602
14.18.7考试题答案 603
第一部分 VB 6考试的基本概念(续) 605
第15章 理解MTS开发环境 605
15.1简介 606
15.2 MTS基本概念 606
15.2.1 MTS的概述 607
15.2.2 MTS软件包及其与COM组件的关系 607
15.3.1配置服务器运行MTS 608
15.3设置MTS 608
15.3.2安装MTS 609
15.3.3安装Option 610
15.3.4在系统软件包上设置安全性 611
15.4使用MTS软件包 612
15.4.1 Package and Deployment向导 612
15.4.2用MTS Explorer创建软件包 616
15.4.3给软件包指定名字 617
15.4.4为软件包指定安全性 618
15.4.5导出和导入现有软件包 620
15.5本章小结 622
15.6.2练习15.2:创建软件包 623
15.6.1练习15.1:安装MTS 623
15.6检查自己所学的知识 623
15.6.3练习15.3:导出MTS软件包 624
15.6.4练习15.4:导入现有软件包 624
15.6.5复习题 625
15.6.6考试题 625
15.6.7复习题答案 627
15.6.8考试题答案 628
第16章 开发MTS应用程序 629
16.1.1调用VISUAL BASIC客户的MTS组件 631
16.1.2创建用来安装或更新客户上的MTS组件的软件包 631
16.1简介 631
16.1.3配置客户计算机使用MTS组件 633
16.2利用VISUAL BASIC开发MTS组件 634
16.2.1理解MTS运行期间环境 634
16.2.2增加组件到MTS软件包 636
16.2.3使用Transactions(事务) 637
16.3理解MTS客户开发 640
16.4理解MTS安全性 640
16.4.1使用基于角色的安全性限定特定用户对MTS软件包的使用 640
16.4.2创建并增加用户到角色 641
16.4.3分派角色到组件或组件接口 643
16.4.4设置组件的安全性属性 643
16.5本章小结 644
16.6检查自己所学的知识 645
16.6.1练习16.1:增加简单的组件 645
16.6.2练习16.2:从MTS软件包导出客户安装执行文件 647
16.6.3练习16.3:配置客户使用MTS组件 648
16.6.4练习16.4:开发使用MTS的Transactional特性的组件 649
16.6.5练习16.5:为软件包创建角色 651
16.6.6练习16.6:把用户分派到角色 651
16.6.7练习16.7:分派角色到组件 652
16.6.8复习题 652
16.6.9考试题 652
16.6.10复习题答案 654
16.6.11考试题答案 655
第17章 采用IIS/WebClass和DHTML应用程序进行Internet编程 656
17.1简介 657
17.2 WebClass应用程序 657
17.2.1创建一个简单的ASP页面 658
17.2.2 VB中的IIS(WebClassDesigner)应用程序 660
17.3 DHTML应用程序 671
17.3.1利用DHTML Page Designer, 创建一个Web页面 671
17.3.2修改DHTML Web页面并定位元素 672
17.3.3 DHTML事件 673
17.3.4在DHTML页面和持续的状态之间进行导航 673
17.3.5更改DHTML元素属性和内容 674
17.3.6更改DHTML元素的Style(风格) 675
17.3.7案例分析:显示顾客销售情况 676
17.4本章小结 676
17.5检查自己学过的知识 677
17.5.1练习17.1:利用WebClasses启用ASP的Microsoft IIS和VB ISS Designer Applications 677
17.5.2练习17.2:创建一个简单的ASP页面 678
17.5.3练习17.3:利用WebClasses创建一个基本的IIS应用程序 679
17.5.4练习17.4:利用一个HTML模板和置换标记来增强IIS应用程序 680
17.5.5练习17.5:实现定制的Webltem Respond事件 681
17.5.6练习17.6:实现Webltems的定制事件 685
17.5.7练习17.7:实现动态Webltem事件 687
17.5.8练习17.8:使用DHTML Page Designer创建和修改Web页面 688
17.5.9练习17.9:在DHTML工程的页面间进行导航 692
17.5.10复习题 694
17.5.11考试题 694
17.5.12复习题答案 696
17.5.13考试题答案 697
第18章 使用VB的Debug/Watch工具 699
18.1简介 700
18.2预防程序错误 701
18.3使用Watch表达式及其上下文 702
18.3.1创建一个Watch表达式 702
18.3.2 Watch表达式的类型 704
18.3.3 Watch上下文 705
18.4使用Break模式 707
18.4.1手动进入Break模式 707
18.4.2单步执行代码 708
18.4.3设置Stepping选项 710
18.4.4使用Watch窗口 710
18.4.5动态进入Break模式 712
18.5使用Quick Watch(快速监视) 714
18.6需要时监视 714
18.7.2采用Debug对象,可编程地显示消息 715
18.7.1显示Debug窗口 715
18.7 Immediate(立即)窗口和Debug对象 715
18.8使用Print方法 716
18.8.1格式化Debug.Print消息 717
18.8.2显示数据值 719
18.9使用Debug.Assert方法 720
18.10与Immediate窗口交互 721
18.10.1查询或修改数据值 722
18.10.2测试和执行VB过程 723
18.11使用Locals窗口 725
18.13作用域的级 727
18.12.2使用GotFocus和LostFocus事件 727
18.12.1使用MouseDown和KeyDown事件 727
18.12用Immediate窗口代替断点 727
18.13.1局部作用域 728
18.13.2模块作用域 729
18.13.3全局作用域 730
18.14作用域的考虑事项 731
18.14.1尽力缩小作用域 731
18.14.2性能问题 732
18.15本章小结 733
18.16检查自己所学知识 733
18.16.1练习18.1:使用调用堆栈 733
18.16.3练习18.3:在Immediate窗口和Local窗口中修改值 735
18.16.2练习18.2:使用Debug.Print命令 735
18.16.4练习18.4:设置监视的作用域 736
18.16.5练习18.5:更改监视的作用域 736
18.16.6复习题 737
18.16.7考试题 737
18.16.8复习题答案 740
18.16.9考试题答案 741
第19章 实现工程组,以支持开发和调试进程 743
19.1简介 744
19.2了解工程组 744
19.2.1创建工程组 745
19.2.2建立多个工程 747
19.3使用工程组调试ActiveX DLL组件 748
19.3.1设置一个示例组 748
19.3.2调试工程组内的特征 751
19.4使用工程组调试ActiveX控件 752
19.5本章小结 753
19.6检查自己所学的知识 754
19.6.1练习19.1:创建一个简单的工程组 754
19.6.2练习19.2:演示更改启动工程的效果 754
19.6.3练习19.3:调试ActiveX DLL(在工作组内) 755
19.6.4练习19.4:调试ActiveX控件 757
19.6.5练习19.5:在设计时期间,用户控件中存在的错误 758
19.6.6复习题 759
19.6.7考试题 759
19.6.8复习题答案 760
19.6.9测验题答案 761
第20章 编译VB应用程序 762
20.1简介 763
20.2 P-代码与本机代码相比较 764
20.2.1本机代码 764
20.2.2解释代码 765
20.2.4 P-代码 766
20.2.3了解以前的伪代码 766
20.3了解什么时候进行优化,以及如何优化 767
20.3.1编译为P-代码 767
20.3.2编译为本机代码 770
20.3.3基本优化 770
20.3.4高级优化 779
20.3.5使用请求时编译 782
20.4了解条件编译 783
20.4.1预处理器命令 784
20.4.2表达式的类型 786
20.4.3编译器常量 787
20.4.4应用程序和风格 791
20.5本章小结 793
20.6检查自己所学的知识 794
20.6.1练习20.1:测量基本优化的益处 794
20.6.2练习20.2:测量高级优化的益处 795
20.6.3练习20.3:更精确的测量 795
20.6.4练习20.4:编译器常量 796
20.6.5复习题 797
20.6.6考试题 797
20.6.7复习题答案 799
20.6.8考试题答案 799
第21章 使用Package and Deployment Wizard(打包和展开向导)创建安装程序 801
21.1简介 803
21.2使用Package and Deployment Wizard创建一个安装包装 803
21.2.1准备运行Package and Deployment Wizard 804
21.2.2启动Package and Deployment Wizard,并选择包装类型 804
21.2.3选择安装包装的类型 805
21.2.4创建标准安装包装 806
21.2.5创建Internet安装包装 811
21.2.6创建从属文件 813
21.3在Microsoft安装程序中使用的标准文件 814
21.3.1在SETUP1.LST中的安装程序文件信息 814
21.3.2 DEP文件中的从属信息 817
21.3.3 SETUP.EXE以及Package and Deployment Wizard的定制安装程序 818
21.4定制一种标准安装程序 819
21.4.1定制SETUP.LST和应用程序的DEP文件 819
21.4.2定制标准的VB Setup工程 819
21.4.5实现应用程序的删除 820
21.5注册一个实现DCOM的组件,并部署DCOM 821
21.6部署你的应用程序 821
21.6.1部署到软盘 822
21.6.2部署到网络目录或部署到CD 824
21.6.3部署到Web 825
21.7本章小结 828
21.6.4部署应用程序的更新信息 828
21.8检查自己所学的知识 829
21.8.1练习21.2:创建一个Internet安装包装 830
21.8.2练习21.3:实现DCOM 831
21.8.3练习21.4:把一个应用程序部署到软盘 831
21.8.4练习21.5:把一个应用程序部署到CD-ROM或网络驱动器 832
21.8.5练习21.6:把一个应用程序部署到内部网或Internet上 832
21.8.6复习题 833
21.8.7考试题 833
21.8.8复习题答案 835
21.8.9考试题答案 835
第22章 快速总结 839
第二部分 最后的复习 839
22.1开发概念设计和逻辑设计 840
22.2导出物理设计 840
22.3建立开发环境 841
22.4创建用户服务 843
22.5创建和管理COM 854
22.6创建ActiveX控件(70-175和70-176) 855
22.7注册COM组件,取消COM组件的注册(70-175和70-176) 860
22.8创建数据服务 860
22.9测试解决方案 864
22.10部署应用程序 866
22.11维护和支持应用程序 867
第23章 学习和考试准备技巧 869
23.1学习技巧 869
23.1.1学习策略 869
23.2 MCP考试 871
23.2.1考试格式 871
23.2.2新的考试类型 873
23.2.3把所有的都放在一起 875
23.3最后的考虑因素 877
试题1:DEVELOPING DISTRIBUTED APPLICATIONS(70-175) 879
第24章 练习考试 879
试题1答案 894
试题2:DEVELOPING DESKTOP APPLICATIONS(70-176) 899
试题2答案 914
第三部分 附录 921
附录A词汇表 921
附录B 概述认证过程 941
附录C CD-ROM上的内容 949
附录D 使用Top Score软件 950
附录E Visual Basic基本知识 960
附录F 建议你阅读的参考资料 1009