
本书从传统编程方式入手,逐步向读者讲述Visual Basic.NET这门编程语言的应用方法。本书内容包括:Visual Basic.NET 2003的开发环境和语言及编程基础知识、面向对象技术的程序开发方法、Windows程序设计的一般方法、Visual Basic.NET2003的控件和组件使用及创建方法、Visual Basic.NET2003中多线程技术使用方法、Visual Basic.NET2003的图形设计技术、Web程序设计技术,以及Visual Basic.NET2003中的数据访问技术。
本书内容丰富,结构清晰,语言简练,叙述深入浅出,具有很强的实用性,适合作为高等院校计算机程序设计的教材和参考书,同时也非常适合广大初、中级编程爱好者自学参考。
Visual Basic .NET 2003是Visual Studio .NET 2003的一个重要组成部分,为快速构建面向 Microsoft Windows和Web的应用程序提供了更容易、更高效的语言和工具。对现有的Visual Basic开发人员和Microsoft .NET开发环境中的新开发人员来说,Visual Basic .NET 2003无疑是最理想的开发工具,因为它提供了增强的可视化设计器、提高的应用程序性能和功能强大的集成开发环境(IDE),使用户能够轻松走上应用程序开发的快车道。本书共分11章,第1~3章介绍了Visual Basic .NET 2003 的开发环境和语言及编程基础知识;第4章介绍了面向对象技术的程序开发方法;第5章介绍了Windows程序设计的一般方法。第6~7章介绍了Visual Basic .NET 2003的控件和组件使用及创建方法;第8章介绍了在Visual Basic .NET 2003中多线程技术使用方法;第9章介绍了Visual Basic .NET 2003的图形设计技术;第10章介绍了Web程序设计技术;第11章介绍了Visual Basic .NET 2003中的数据访问技术。本书面向广泛的编程爱好者,采用由浅入深、循序渐进的讲述方法,在基本编程理论的基础之上配合适当的程序示例,努力做到理论与实际相结合,结构安排合理,具有很强的实用性,特别适合作为通用教材。此外,本书包含了适量的习题和上机操作题,习题类型有填空题、选择题和问答题,帮助读者在学习完每章后进行总结、复习。另外,当读者通读完本书的学习内容后,还可以通过附录中的综合测试题检测自己的学习情况。本书是集体智慧的结晶,除封面署名的作者外,参加本书编写的还有祁春、张立浩、徐燕华、徐燕萍、孔祥亮、徐帆、钟岚、王静琪、孔祥丰、邱丽、王维、张雪琴等人。由于作者水平有限,加之创作时间仓促,本书不足之处在所难免,欢迎广大读者批评指正。
作 者 2003年10月
目 录
第1章 初识Visual Basic .NET 2003 1
1.1 Visual Basic .NET 2003概述 1
1.1.1 Visual Basic .NET的发展历程 1
1.1.2 开发环境特性 2
1.1.3 语言特性 4
1.1.4 全新的程序运行方式 5
1.2 Visual Basic .NET 2003开发环境 8
1.2.1 标题栏 9
1.2.2 菜单栏 9
1.2.3 工具栏 11
1.2.4 工具箱 12
1.2.5 其他窗口 12
1.2.6 自定义用户集成开发环境 13
1.3 从一个简单应用程序开始 14
1.3.1 程序设计思想 15
1.3.2 创建应用程序 15
1.3.3 设置对象属性 16
1.3.4 编写程序代码 17
1.3.5 测试应用程序 18
1.4 习题与上机操作 18
1.4.1 填空题 18
1.4.2 选择题 19
1.4.3 简答题 19
1.4.4 上机操作 19
第2章 Visual Basic .NET 2003语言基础 20
2.1 数据类型 20
2.1.1 基本数据类型 20
2.1.2 自定义数据类型 23
2.1.3 数组 24
2.1.4 枚举类型 26
2.1.5 数据类型的转换 28
2.2 常量和变量 29
2.2.1 常量 30
2.2.2 变量 32
2.3 运算符 35
2.3.1 赋值运算符 36
2.3.2 算术运算符 36
2.3.3 比较运算符 37
2.3.4 串联运算符 39
2.3.5 逻辑运算符 39
2.3.6 运算符的优先级 41
2.3.7 运算符的有效组合 41
2.4 习题与上机操作 43
2.4.1 填空题 43
2.4.2 选择题 43
2.4.3 简答题 43
2.4.4 上机操作 44
第3章 Visual Basic .NET 2003编程基础 45
3.1 程序流程控制 45
3.1.1 分支控制 45
3.1.2 循环控制 50
3.1.3 控制语句嵌套 55
3.1.4 With语句 56
3.2 Visual Basic .NET的过程 56
3.2.1 Sub 过程 57
3.2.2 Property 过程 59
3.2.3 过程的参数传递 61
3.3 Visual Basic .NET的函数 63
3.3.1 Function函数 63
3.3.2 数学函数 66
3.3.3 字符串函数 67
3.3.4 日期函数及其他一些函数 68
3.4 习题与上机操作 68
3.4.1 填空题 68
3.4.2 选择题 68
3.4.3 简答题 69
3.4.4 上机操作 69
第4章 面向对象编程 70
4.1 面向对象概述 70
4.1.1 类 71
4.1.2 对象 71
4.1.3 实例 72
4.1.4 消息 72
4.1.5 属性 72
4.1.6 方法 73
4.1.7 继承性 73
4.1.8 多态性和函数重载 74
4.1.9 封装 74
4.2 Visual Basic .NET 2003面向对象程序设计 74
4.2.1 Visual Basic .NET 2003的类 74
4.2.2 Visual Basic .NET 2003的对象 86
4.3 事件与委托 90
4.3.1 事件 90
4.3.2 事件处理程序 92
4.3.3 委托和 AddressOf 运算符 94
4.4 接口 95
4.4.1 接口定义 95
4.4.2 接口实现 96
4.4.3 基于接口的多态性 98
4.4.4 类继承与接口继承 99
4.5 类库 104
4.5.1 创建类库项目 104
4.5.2 使用类库 105
4.6 继承的层次结构分析 106
4.6.1 可扩展性 106
4.6.2 选择方法的访问级别 107
4.6.3 部署后的类设计更改 107
4.7 习题与上机操作 108
4.7.1 填空题 108
4.7.2 选择题 108
4.7.3 简答题 109
4.7.4 上机操作 109
第5章 Windows程序设计 110
5.1 Windows窗体设计 110
5.1.1 窗体概念 111
5.1.2 创建窗体 111
5.1.3 窗体属性、事件和方法 113
5.1.4 创建特殊效果窗体 115
5.1.5 窗体对象 117
5.1.6 Windows窗体继承 117
5.2 MDI多文档程序设计 121
5.2.1 创建 MDI 父窗体 121
5.2.2 创建 MDI子窗体 121
5.2.3 活动的MDI子窗口 123
5.2.4 排列 MDI 子窗体 124
5.3 菜单设计 125
5.3.1 菜单MainMenu 125
5.3.2 菜单增强功能 129
5.3.3 上下文菜单ContextMenu 130
5.3.4 ContextMenu综合应用 132
5.4 工具栏 133
5.4.1 Toolbar控件介绍 134
5.4.2 ImageList组件 134
5.4.3 向工具栏添加按钮 135
5.4.4 定义“工具栏”按钮的图标 136
5.4.5 触发工具栏按钮的菜单事件 137
5.5 状态栏 137
5.5.1 StatusBar控件 138
5.5.2 面板事件的处理 138
5.5.3 单击面板事件处理 139
5.5.4 设置状态栏面板的大小 140
5.5.5 在运行时更新状态栏信息 140
5.6 控制台应用程序 141
5.6.1 控制台应用程序的特点 141
5.6.2 建立控制台应用程序项目 142
5.6.3 控制台信息的输入与输出 143
5.7 习题与上机操作 144
5.7.1 填空题 144
5.7.2 选择题 145
5.7.3 简答题 145
5.7.4 上机操作 145
第6章 Visual Basic .NET 2003的常用控件 146
6.1 窗体控件概述 146
6.1.1 向Windows 窗体添加控件 146
6.1.2 在 Windows窗体中使用的控件 147
6.2 常规控件 149
6.2.1 TextBox控件 149
6.2.2 LinkLabel 控件 152
6.2.3 CheckedListBox控件 154
6.2.4 DomainUpDown 控件 156
6.2.5 NotifyIcon控件 156
6.2.6 HScrollBar 和 VScrollBar 控件 158
6.2.7 Panel控件 159
6.3 RichTextBox控件 160
6.3.1 确定RichTextBox中格式属性更改的时间 160
6.3.2 在RichTextBox控件中显示滚动条 161
6.3.3 使用控件显示Web样式的链接 162
6.3.4 为RichTextBox 控件设置字体属性 162
6.4 对话框控件 163
6.4.1 创建对话框 164
6.4.2 显示 Windows窗体的对话框 164
6.4.3 对话框中的输入操作 164
6.4.4 关闭对话框并保留输入信息 165
6.4.5 从对话框的父窗体检索信息 166
6.4.6 消息框 167
6.5 附加组件介绍 168
6.5.1 ErrorProvider组件 168
6.5.2 HelpProvider 组件 169
6.5.3 窗体ToolTip组件 171
6.6 控件开发技术 172
6.6.1 控件开发基础知识 173
6.6.2 开发继承型控件 173
6.6.3 开发组合型控件 175
6.7 习题与上机操作 177
6.7.1 填空题 177
6.7.2 选择题 178
6.7.3 简答题 178
6.7.4 上机操作 178
第7章 组件实现技术 179
7.1 组件结构 179
7.1.1 实现组件功能的方法 179
7.1.2 组件和程序集 181
7.1.3 组件的初始化和终止 182
7.2 方法、属性和事件在组件中的实现 184
7.2.1 组件中方法的实现 184
7.2.2 组件中的属性实现 185
7.2.3 组件和自定义控件的事件实现 189
7.3 组件创作 190
7.3.1 创建项目 191
7.3.2 添加构造函数和终结程序 191
7.3.3 将属性添加到类中 193
7.3.4 测试组件 193
7.3.5 从组件显示窗体 194
7.4 组件中的异常处理 195
7.4.1 引发组件异常的最佳做法 195
7.4.2 从组件引发异常 196
7.4.3 在组件中处理异常的建议 198
7.4.4 在组件中处理异常 199
7.5 代码库 199
7.5.1 使用代码库应注意的问题 199
7.5.2 创建代码库 200
7.6 习题与上机操作 201
7.6.1 填空题 201
7.6.2 选择题 201
7.6.3 简答题 201
7.6.4 上机操作 201
第8章 多线程编程技术 202
8.1 多线程概述 202
8.1.1 线程与进程 203
8.1.2 处理线程 203
8.1.3 何时使用多线程 204
8.1.4 多线程的优点与缺点 204
8.1.5 线程池 205
8.1.6 线程处理在程序设计中的应用 207
8.1.7 启用线程 207
8.2 多线程的处理 208
8.2.1 多线程应用程序 208
8.2.2 多线程过程的参数和返回值 209
8.2.3 同步线程 211
8.3 多线程处理的综合应用 212
8.3.1 创建应用程序框架 212
8.3.2 定义在单线程上运行的方法 213
8.3.3 处理线程中的事件 215
8.3.4 启动调用方法的线程 215
8.3.5 停止线程 216
8.4 创作多线程组件 216
8.4.1 创建项目 217
8.4.2 从组件接受用户的输入信息 219
8.4.3 添加多线程处理功能 222
8.4.4 多线程中的封送处理 223
8.4.5 锁定线程 225
8.5 习题与上机操作 226
8.5.1 填空题 226
8.5.2 选择题 226
8.5.3 简答题 226
8.5.4 上机操作 227
第9章 图形设计技术 228
9.1 Graphics对象 228
9.1.1 Paint事件处理 229
9.1.2 CreateGraphics方法 229
9.1.3 从Image对象创建 229
9.2 画笔、画刷和颜色 230
9.2.1 画笔 230
9.2.2 画刷 231
9.2.3 纯色 231
9.2.4 图案 232
9.3.5 颜色 232
9.3 图形设计 234
9.3.1 绘制线条或空心形状 234
9.3.2 绘制实心形状 234
9.3.3 绘制文本 235
9.3.4 呈现图像 236
9.3.5 图形设计示例 236
9.4 习题与上机操作 241
9.4.1 填空题 241
9.4.2 选择题 241
9.4.3 简答题 242
9.4.4 上机操作 242
第10章 Web程序设计技术 243
10.1 Web 应用程序介绍 243
10.1.1 Web窗体页 243
10.1.2 Web 窗体的组件 244
10.1.3 Web窗体页功能 244
10.2 ASP.NET介绍 246
10.2.1 ASP.NET页框架和Web窗体页 246
10.2.2 XML Web services 246
10.2.3 状态管理功能与应用程序事件 247
10.2.4 编译、配置和部署 247
10.2.5 安全性、调试支持与优化 247
10.2.6 性能计数器支持 248
10.3 Web窗体代码模型 248
10.3.1 ASP.NET Page 类 248
10.3.2 从 Page 类派生Web窗体 249
10.3.3 单文件Web窗体页 250
10.4 Web窗体页处理 251
10.4.1 往返行程 251
10.4.2 重新创建页 252
10.4.3 事件驱动模型 252
10.4.4 Web窗体处理的各个阶段 253
10.5 创建基本的 Web 窗体页 254
10.5.1 创建项目和窗体 254
10.5.2 添加控件和文本 256
10.5.3 创建事件处理程序 257
10.5.4 Web窗体应用开发总结 258
10.6 习题与上机操作 258
10.6.1 填空题 258
10.6.2 选择题 258
10.6.3 简答题 259
10.6.4 上机操作 259
第11章 数据访问技术 260
11.1 数据访问技术概述 260
11.1.1 OLE DB 260
11.1.2 ADO 261
11.1.3 ADO.NET 261
11.1.4 如何选择 ADO.NET或ADO 261
11.1.5 如何选择OLE DB 263
11.2 通过 ADO.NET 访问数据 264
11.2.1 ADO.NET的设计目标 264
11.2.2 ADO.NET 结构 265
11.2.3 .NET数据提供程序 267
11.2.4 ADO.NET DataSet 269
11.2.5 为.NET数据提供程序编写通用代码 270
11.3 窗体中的数据访问 271
11.3.1 创建项目和窗体 271
11.3.2 创建和配置数据集 272
11.3.3 添加显示控件 275
11.3.4 操作数据库 276
11.4 使用参数化查询 277
11.4.1 创建项目和窗体 277
11.4.2 创建和配置数据集 277
11.4.3 添加显示数据的控件 279
11.4.4 测试与功能完善 282
11.5 Web数据访问的实现 282
11.5.1 创建项目和窗体 283
11.5.2 创建和配置数据集 283
11.5.3 添加DataGrid以显示数据 284
11.5.4 测试与总结 285
11.5.5 总结 285
11.6 ADO.NET 中的并发控制 285
11.6.1 ADO.NET 中的数据并发 285
11.6.2 ADO.NET和Visual Studio .NET中的并发控制 286
11.6.3 处理并发异常示例 288
11.7 习题与上机操作 294
11.7.1 填空题 294
11.7.2 选择题 294
11.7.3 简答题 295
11.7.4 上机操作 295
附录A 综合测试题(一) 296
附录B 综合测试题(二) 298
附录C 习题答案 301
附录D 综合测试题部分参考答案 315