图书目录

目    录

第1篇  基础知识

第1章  Visual Basic集成开发环境 2

 视频讲解:145分钟

1.1  Visual Basic简介 3

1.1.1  Visual Basic概述 3

1.1.2  Visual Basic 6.0的特点 3

1.1.3  Visual Basic 6.0的局限性 4

1.2  学习Visual Basic的好处 4

1.2.1  Visual Basic可以做什么 4

1.2.2  学习Visual Basic的几点建议 5

1.3  Visual Basic开发环境的安装和程序

启动 5

1.3.1  Visual Basic 6.0的运行环境 5

1.3.2  Visual Basic 6.0+SP6的安装 6

1.3.3  Visual Basic 6.0的启动 7

1.4  Visual Basic 6.0的集成开发环境 9

1.4.1  集成开发环境简介 9

1.4.2  菜单栏 9

1.4.3  工具栏 11

1.4.4  工具箱 12

1.4.5  工程资源管理器 14

1.4.6  属性窗口 15

1.4.7  窗体布局窗口 15

1.4.8  窗体设计器 16

1.4.9  代码编辑窗口 16

1.5  Visual Basic的MDI和SDI开发环境 16

1.5.1  多文档界面开发环境 16

1.5.2  单文档界面开发环境 17

1.6  开发环境使用技巧 17

1.6.1  设置启动时保存 17

1.6.2  自定义工具栏 18

1.6.3  为代码编辑器设置鼠标滚动 19

1.6.4  设置网格大小和不对齐到网格 20

1.6.5  设置在编辑器中要求变量声明 20

1.6.6  规范代码缩进格式 21

1.7  Visual Basic 6.0的帮助系统 21

1.7.1  MSDN Library的安装与使用 21

1.7.2  利用附带的实例源程序学习编程 22

1.7.3  使用Visual Basic的帮助菜单 23

1.8  创建第一个VB程序 24

1.8.1  创建工程文件 24

1.8.2  设计界面 24

1.8.3  编写代码 24

1.8.4  调试运行 25

1.8.5  保存工程 25

1.8.6  编译程序 26

1.9  利用应用程序向导自动生成应用程序 26

1.10  实战 29

1.10.1  设置控件大小一致 29

1.10.2  创建或打开新工程 30

1.10.3  添加ActiveX控件 31

1.10.4  显示文字 31

1.10.5  加法计算器 32

1.11  小结 32

1.12  学习成果检验 33

第2章   VB语言基础 34

 视频讲解:118分钟

2.1  关键字和标识符 35

2.2  基本数据类型 35

2.2.1  字符型 36

2.2.2  数值型 37

2.2.3  布尔型 38

2.2.4  日期型 38

2.2.5  变体型 38

2.2.6  对象型 39

2.3  记录类型 39

2.4  枚举类型 40

2.5  变量 41

2.5.1  什么是变量 41

2.5.2  变量的命名 41

2.5.3  变量的声明 42

2.6  变量的作用域 43

2.6.1  静态变量 44

2.6.2  变量同名问题的处理 45

2.7  常量 45

2.7.1  常量的声明 45

2.7.2  局部常量和全局常量 46

2.8  运算符 46

2.9  表达式 47

2.9.1  什么是表达式 48

2.9.2  表达式的种类 48

2.9.3  运算符在表达式中的优先级 49

2.10  语言基础应用技巧 50

2.10.1  如何处理溢出 50

2.10.2  正确使用"&"和"+" 50

2.10.3  正确使用Or、Xor、And、Eqv、Imp

运算符 51

2.11  实战 52

2.11.1  判断输错口令次数 52

2.11.2  欢迎窗体 52

2.11.3  计算圆的面积 53

2.11.4  日期提醒程序 53

2.11.5  袖珍计算器 54

2.12  小结 55

2.13  学习成果检验 55

第3章   算法和程序控制结构 56

 视频讲解:166分钟

3.1  算法 57

3.1.1  什么是算法 57

3.1.2  算法的特性 58

3.1.3  算法的描述方法 58

3.1.4  构成算法的基本控制结构 60

3.2  顺序结构 62

3.2.1  赋值语句 62

3.2.2  数据的输入 63

3.2.3  数据的输出 64

3.3  选择结构 65

3.3.1  单分支If...Then语句 66

3.3.2  双分支If...Then...Else语句 67

3.3.3  If语句的嵌套 68

3.3.4  多分支If...Then...ElseIf语句 70

3.3.5  Select Case语句 72

3.3.6  IIf函数 74

3.4  循环结构 75

3.4.1  For...Next循环语句 75

3.4.2  For Each...Next循环语句 77

3.4.3  Do...Loop循环语句 77

3.4.4  多重循环 80

3.4.5  选择结构与循环结构的嵌套 81

3.5  其他辅助控制语句 82

3.5.1  跳转语句GoTo 82

3.5.2  复用语句With...End With 83

3.5.3  退出语句Exit 83

3.5.4  结束语句End 84

3.6  实战 85

3.6.1  计算最大公约数和最小公倍数 85

3.6.2  判断素数 86

3.6.3  验证哥德巴赫猜想 87

3.6.4  用For...Next语句求解整数n的阶乘 88

3.6.5  用Print语句打印工资数据 88

3.7  小结 89

3.8  学习成果检验 89

第4章   数组与集合 90

 视频讲解:132分钟

4.1  数组概述 91

4.1.1  数组的概念 91

4.1.2  数组与简单变量的区别 91

4.1.3  数组的分类 91

4.2  静态数组 92

4.2.1  静态数组的声明和使用 92

4.2.2  一维数组 93

4.2.3  二维数组 94

4.2.4  多维数组 95

4.3  动态数组 95

4.3.1  动态数组的声明 96

4.3.2  动态数组的使用 96

4.3.3  数组的清除 97

4.4  控件数组 97

4.4.1  控件数组的概念 97

4.4.2  控件数组的创建 97

4.4.3  控件数组的使用 98

4.4.4  加载和删除控件数组中的控件 99

4.5  数组相关函数及语句 100

4.5.1  使用Array函数创建数组 100

4.5.2  使用UBound和LBound函数获取数组

上下标 100

4.5.3  使用Split函数生成一维字符串数组 101

4.5.4  使用Option Base语句声明数组下标

最大值 102

4.6  集合 102

4.6.1  集合的创建 102

4.6.2  控件集合(Controls集合) 103

4.7  实战 105

4.7.1  动态添加和删除控件 105

4.7.2  利用数组实现随机抽取幸运观众 107

4.7.3  利用二维数组向网格控件中添加背景

图片 108

4.7.4  统计文字段落数 109

4.7.5  成绩排名 110

4.8  小结 111

4.9  学习成果检验 111

第5章   过程 112

 视频讲解:97分钟

5.1  认识过程 113

5.2  事件过程 113

5.2.1  建立事件过程 113

5.2.2  调用事件过程 114

5.3  子过程(Sub过程) 114

5.3.1  建立子过程 115

5.3.2  调用子过程 116

5.3.3  调用其他模块中的子过程 117

5.4  函数过程(Function过程) 117

5.4.1  建立函数过程 117

5.4.2  调用函数过程 118

5.4.3  函数过程与子过程的区别 118

5.5  参数的传递 118

5.5.1  认识参数 119

5.5.2  参数按值和按地址传递 120

5.5.3  数组参数 121

5.5.4  对象参数 122

5.6  嵌套过程 122

5.7  递归过程 123

5.8  属性过程(Property过程) 124

5.8.1  使用属性过程建立类的属性 124

5.8.2  使用类属性 126

5.8.3  只读属性和对象属性 126

5.9  工程中的模块 126

5.9.1  窗体模块 126

5.9.2  标准模块 127

5.9.3  类模块 128

5.9.4  标准模块与类模块的区别 128

5.10  过程的作用域 129

5.11  实战 131

5.11.1  编写计算圆面积的函数过程 131

5.11.2  自定义二进制转换为十进制的函数 131

5.11.3  利用递归实现求最大公约数 132

5.11.4  计算水果的加权平均值 132

5.11.5  判断闰年 133

5.12  小结 134

5.13  学习成果检验 134

第6章   内置函数 135

 视频讲解:122分钟

6.1  字符串函数 136

6.1.1  获取字符长度(Len函数) 136

6.1.2  取左(右)面指定个数的字符(Left和

Right函数) 136

6.1.3  截取字符串(Mid函数) 137

6.1.4  获取字符出现的位置(InStr和InStrRev

函数) 138

6.1.5  去除空格(Trim、RTrim、LTrim

函数) 140

6.1.6  将字符串转换为大(小)写(UCase和

LCase函数) 141

6.2  数学函数 142

6.2.1  求绝对值(Abs函数) 142

6.2.2  求平方根(Sqr函数) 142

6.2.3  e的n次方(Exp函数) 143

6.2.4  求自然对数(Log函数) 144

6.2.5  返回符号(Sgn函数) 144

6.2.6  取整(Int和Fix函数) 145

6.3  判断函数 146

6.3.1  判断是否为数组(IsArray函数) 146

6.3.2  判断是否为Null(IsNull函数) 146

6.3.3  判断是否为数字(IsNumeric函数) 147

6.4  类型转换函数 147

6.4.1  转换为字符型(Str函数) 147

6.4.2  转换为数值型(Val函数) 148

6.4.3  转换为ASCII(Asc函数) 149

6.4.4  转换为字符(Chr函数) 149

6.5  日期和时间函数 150

6.5.1  Date、Now和Time函数 150

6.5.2  Weekday函数 150

6.5.3  返回年、月、日(Year、Month、Day

函数) 152

6.5.4  返回时、分、秒(Hour、Minute、Second

函数) 152

6.6  随机函数 153

6.6.1  初始化随机数(Randomize函数) 153

6.6.2  生成随机数(Rnd函数) 153

6.7  格式化函数 154

6.8  实战 156

6.8.1  判断某个时间段里有多少个工作日 156

6.8.2  数字时钟 157

6.8.3  计算器 159

6.8.4  幸运抽奖 159

6.8.5  猜数字 161

6.9  小结 163

6.10  学习成果检验 163

第7章   综合实验(一)--万年历模块 164

7.1  万年历模块概述 165

7.1.1  模块概述 165

7.1.2  程序预览 165

7.2  关键技术 165

7.2.1  日历显示控件排列算法 165

7.2.2  阳历转换到阴历算法 166

7.2.3  阴历转换到阳历算法 168

7.2.4  SendMessage函数实现移动窗体 169

7.3  实现过程 169

7.4  小结 174

7.5  学习成果检验 174

  

第2篇  基本控件

第8章   窗体和系统对象

 视频讲解:152分钟

8.1  窗体概述 177

8.1.1  窗体的结构 177

8.1.2  模式窗体和无模式窗体 177

8.1.3  SDI窗体和MDI窗体 178

8.2  窗体的属性 178

8.2.1  名称(Name属性) 178

8.2.2  标题(Caption属性) 179

8.2.3  图标(Icon属性) 179

8.2.4  背景(Picture属性) 180

8.2.5  边框样式(BorderStyle属性) 181

8.3  窗体的事件 182

8.3.1  单击和双击(Click/DblClick事件) 182

8.3.2  载入和卸载(Load/QueryUnload/Unload

事件) 182

8.3.3  初始化(Initialize事件) 184

8.3.4  活动性(Activate/Deactivate事件) 184

8.3.5  焦点事件(GotFocus/LostFocus事件) 185

8.3.6  重绘(Paint事件) 186

8.3.7  调整大小(Resize事件) 187

8.4  窗体事件的生命周期 187

8.5  窗体的方法 189

8.5.1  加载窗体(Load方法) 189

8.5.2  卸载窗体(Unload方法) 189

8.5.3  显示窗体(Show方法) 190

8.5.4  隐藏窗体(Hide方法) 191

8.5.5  移动窗体(Move方法) 191

8.5.6  清除窗体(Cls方法) 192

8.5.7  在窗体上显示文本(Print方法) 192

8.5.8  打印窗体(PrintForm方法) 193

8.6  MDI窗体 194

8.6.1  MDI窗体概述 194

8.6.2  MDI窗体的创建 194

8.6.3  在MDI窗体中添加控件 195

8.6.4  MDI子窗体(MDIChild属性) 196

8.6.5  MDI窗体的特点 197

8.7  窗体应用技巧 197

8.7.1  如何设置闪烁的窗体标题栏 198

8.7.2  如何设置窗体前置 198

8.7.3  如何拖动无标题栏窗体移动 199

8.8  系统对象 200

8.8.1  应用程序对象(App对象) 200

8.8.2  屏幕对象(Screen对象) 203

8.8.3  剪贴板对象(Clipboard对象) 204

8.8.4  调试对象(Debug对象) 205

8.9  实战 207

8.9.1  在窗口中平铺图片 207

8.9.2  透明窗体 207

8.9.3  利用App对象防止程序重复 209

8.9.4  利用Screen对象获得系统中的可用

字体 209

8.9.5  记录剪贴板内容 210

8.10  小结 211

8.11  学习成果检验 211

第9章   常用标准控件 212

 视频讲解:234分钟

9.1  控件概述 213

9.1.1  控件的作用 213

9.1.2  控件的分类 213

9.1.3  控件的命名 214

9.1.4  控件的属性、方法和事件 214

9.2  控件的相关操作 215

9.2.1  向窗体上添加控件 215

9.2.2  设置控件大小和位置 215

9.2.3  复制控件 215

9.2.4  删除控件 216

9.2.5  锁定控件 216

9.2.6  使用窗体编辑器调整控件布局 216

9.3  界面设计的基本原则 217

9.4  标签控件(Label控件) 219

9.4.1  标签控件概述 219

9.4.2  标签控件的常用属性 219

9.4.3  利用标签控件实现鼠标交互效果 220

9.5  文本框控件(TextBox控件) 220

9.5.1  文本框控件概述 220

9.5.2  文本框控件的常用属性、方法和事件 220

9.5.3  利用文本框控件实现用户登录 223

9.6  命令按钮控件(CommandButton

控件) 224

9.6.1  命令按钮概述 224

9.6.2  命令按钮的常用属性和事件 224

9.6.3  利用命令按钮实现加载图片的功能 225

9.7  单选按钮、复选框及框架 226

9.7.1  单选按钮(OptionButton控件) 226

9.7.2  复选框(CheckBox控件) 227

9.7.3  框架(Frame控件) 228

9.7.4  设置字体显示效果 228

9.8  列表框控件(ListBox控件) 229

9.8.1  列表框控件概述 229

9.8.2  列表框控件的常用属性、方法和事件 229

9.8.3  随机抽取列表框中数据 233

9.9  组合框控件(ComboBox控件) 233

9.9.1  组合框控件概述 233

9.9.2  组合框控件的常用属性 233

9.9.3  改变ComboBox控件下拉列表框的

长度 235

9.10  滚动条控件(HScrollBar和VScrollBar

控件) 236

9.10.1  滚动条控件概述 236

9.10.2  滚动条控件的属性和事件 236

9.10.3  利用滚动条浏览大幅图片 237

9.11  时钟控件(Timer控件) 238

9.11.1  Timer控件的属性和事件 238

9.11.2  利用Timer控件设计小游戏 238

9.12  实战 240

9.12.1  利用基本控件实现显示学生信息 240

9.12.2  为TextBox控件添加列表选择框 241

9.12.3  赛马游戏 242

9.12.4  掷骰子 243

9.12.5  贪吃蛇 246

9.13  小结 248

9.14  学习成果检验 248

第10章  常用ActiveX控件 249

 视频讲解:116分钟

10.1  ActiveX控件的使用 250

10.1.1  ActiveX控件概述 250

10.1.2  注册ActiveX控件 250

10.1.3  添加ActiveX控件 251

10.1.4  删除ActiveX控件 252

10.2  图像列表控件(ImageList控件) 252

10.2.1  认识ImageList控件 252

10.2.2  添加图像 253

10.2.3  与其他控件关联 254

10.2.4  创建组合图像 256

10.3  视图控件(ListView控件) 256

10.3.1  认识ListView控件 256

10.3.2  添加数据 257

10.3.3  用ListView控件+数据表创建报表

视图 257

10.3.4  用ListView控件创建大图标视图 259

10.4  树状控件(TreeView控件) 260

10.4.1  认识TreeView控件 260

10.4.2  添加数据 260

10.4.3  删除指定节点数据 262

10.4.4  节点展开与折叠 262

10.4.5  用TreeView控件+数据表创建多级树状

视图 263

10.5  选项卡控件(SSTab控件) 265

10.5.1  认识SSTab控件 266

10.5.2  设置选项卡数目和行数 266

10.5.3  在选项卡中添加控件 266

10.5.4  运行时启用和停用选项卡 267

10.5.5  定制不同样式的选项卡 267

10.5.6  图形化选项卡 268

10.6  进度条控件(ProgressBar控件) 269

10.6.1  认识ProgressBar控件 269

10.6.2  显示进展情况 269

10.6.3  将Max属性设置为已知的界限 269

10.6.4  隐藏ProgressBar控件 270

10.6.5  用ProgressBar控件显示清空数据的

进度 270

10.7  日期/时间控件(DateTimePicker

控件) 271

10.7.1  认识DateTimePicker控件 271

10.7.2  设置和返回日期 271

10.7.3  实时读取DTPicker控件中的日期 272

10.7.4  使用CheckBox属性选择无日期 272

10.7.5  使用日期和时间的格式 272

10.7.6  使用DTPicker控件计算日期或天数 273

10.8  实战 274

10.8.1  使用MaskEdBox控件限制日期输入

格式 274

10.8.2  进度条循环滚动 275

10.8.3  企业部门信息查询导航栏 276

10.8.4  保质期计算器 276

10.8.5  制作带有图标的客户管理系统导航栏 277

10.9  小结 278

10.10  学习成果检验 278

第11章  菜单、工具栏和状态栏 279

 视频讲解:135分钟

11.1  菜单概述 280

11.1.1  菜单的概念 280

11.1.2  菜单的组成 280

11.1.3  菜单的状态 281

11.1.4  菜单编辑器 281

11.2  标准菜单 283

11.2.1  最简菜单 283

11.2.2  菜单无效状态 283

11.2.3  级联菜单 284

11.2.4  菜单分割条 285

11.2.5  复选菜单 285

11.2.6  菜单的快捷键和访问键 286

11.2.7  创建菜单数组 287

11.2.8  修饰菜单 288

11.2.9  为菜单事件添加代码 288

11.3  弹出式菜单 288

11.3.1  弹出式菜单概述 289

11.3.2  PopupMenu方法 289

11.3.3  弹出式菜单的设计和调用 289

11.3.4  利用弹出式菜单为无标题栏窗体添加

菜单 290

11.4  菜单的编程 292

11.4.1  菜单的多列显示 293

11.4.2  可伸缩的菜单项 293

11.4.3  为菜单添加图标 295

11.4.4  菜单复制器 296

11.5  工具栏设计 298

11.5.1  工具栏概述 298

11.5.2  利用Toolbar控件创建最简工具栏 299

11.5.3  为工具栏按钮添加图片 299

11.5.4  为工具栏按钮设置分组 300

11.5.5  为工具栏添加下拉菜单 301

11.5.6  给工具栏按钮添加事件处理代码 302

11.6  状态栏设计 303

11.6.1  状态栏概述 303

11.6.2  利用状态栏显示操作员信息 303

11.6.3  利用状态栏显示日期、时间 304

11.6.4  利用状态栏显示鼠标位置 304

11.7  实战 305

11.7.1  改变菜单的颜色 305

11.7.2  托盘上的弹出式菜单 305

11.7.3  向工具栏中添加ComboBox控件 306

11.7.4  在状态栏中显示窗体信息 307

11.7.5  保存历史信息的菜单 307

11.8  小结 308

11.9  学习成果检验 308

第12章  对话框 310

 视频讲解:52分钟

12.1  输入对话框 311

12.2  消息对话框 312

12.3  公用对话框 314

12.3.1  公用对话框概述 314

12.3.2  "打开"对话框 315

12.3.3  "另存为"对话框 316

12.3.4  "颜色"对话框 317

12.3.5  "字体"对话框 318

12.3.6  "打印"对话框 319

12.3.7  "帮助"对话框 319

12.4  实战 320

12.4.1  使用"打开"对话框打开图片 320

12.4.2  读取并保存INI文件 320

12.4.3  使用"颜色"对话框设置文字颜色 321

12.4.4  制作"运行"对话框中的"浏览"

对话框 322

12.4.5  创建"是否替换文件"对话框 323

12.5  小结 324

12.6  学习成果检验 324

第13章  综合实验(二)--Word自动化

控制模块 325

13.1  Word自动化控制模块概述 326

13.1.1  开发背景 326

13.1.2  需求分析 326

13.1.3  功能结构 326

13.2  关键技术 326

13.2.1  应用PageSetup对象设置页面 326

13.2.2  应用Range\Find对象的Execute方法实现

查找和替换 327

13.2.3  编辑页面提取目录 328

13.2.4  应用ShellExecute函数打印Word文档 332

13.2.5  应用BuiltInDocumentProperties属性获取

文档属性 333

13.3  主窗体设计 334

13.3.1  功能概述 334

13.3.2  MDI主窗体设计 334

13.3.3  在列表中显示Word文件 336

13.3.4  文档打印 337

13.3.5  文档属性 337

13.4  文档设置 339

13.4.1  功能概述 339

13.4.2  窗体设计 339

13.4.3  设置页边距、纸型和页眉/页脚 340

13.5  文档修改 341

13.5.1  功能概述 341

13.5.2  窗体设计 341

13.5.3  实现代码 341

13.6  文档处理 342

13.6.1  功能概述 342

13.6.2  窗体设计 343

13.6.3  统计、编辑页码并提取目录 343

13.7  疑难问题分析与解决 345

13.7.1  获取文件属性的字符串 345

13.7.2  如何实现目录的提取 346

13.8  小结 346

13.9  学习成果检验 346

  

  

第3篇  高级应用

第14章  文件系统编程 348

 视频讲解:120分钟

14.1  文件的基本概念 349

14.1.1  文件的一般结构 349

14.1.2  文件的分类 349

14.1.3  文件的访问方式 350

14.2  顺序文件 350

14.2.1  打开顺序文件 350

14.2.2  关闭顺序文件 351

14.2.3  读取顺序文件 352

14.2.4  写入顺序文件 354

14.3  随机文件 356

14.3.1  随机文件的特点 356

14.3.2  打开随机文件 356

14.3.3  关闭随机文件 357

14.3.4  读取随机文件 357

14.3.5  写入随机文件 357

14.4  二进制文件 359

14.4.1  打开二进制文件 359

14.4.2  二进制文件的关闭 359

14.4.3  二进制文件的读取与写入操作 359

14.5  文件操作函数 360

14.5.1  利用CurDir函数获取路径 360

14.5.2  利用FileLen函数返回文件长度 361

14.5.3  利用EOF函数测试文件结束状态 361

14.5.4  利用LOF函数获取打开文件的大小 362

14.5.5  利用GetAttr函数获取文件属性 362

14.5.6  利用FileDateTime函数获取文件创建或

修改时间 362

14.6  文件操作语句 363

14.6.1  利用FileCopy语句复制文件 363

14.6.2  利用Name语句重命名文件 364

14.6.3  利用Kill语句删除文件 364

14.6.4  利用ChDrive语句改变当前驱动器 365

14.6.5  利用ChDir语句改变目录或文件夹 366

14.6.6  利用MkDir语句创建目录或文件夹 366

14.6.7  利用SetAttr语句设置文件属性 366

14.7  文件系统控件 367

14.7.1  驱动器列表框控件(DriveListBox

控件) 367

14.7.2  目录列表框控件(DirListBox控件) 368

14.7.3  文件列表框控件(FileListBox控件) 370

14.7.4  利用文件系统控件读取文件 372

14.8  实战 373

14.8.1  批量移动文件 373

14.8.2  文件及文件夹名提取器 374

14.8.3  文档编辑器 376

14.8.4  过滤文件中的重要数据 380

14.8.5  为顺序文件添加数字编号 381

14.9  小结 382

14.10  学习成果检验 383

第15章  图形图像技术 384

 视频讲解:95分钟

15.1  坐标系统 385

15.1.1  默认的坐标系统 385

15.1.2  自定义的坐标系统 385

15.2  图形、图像中的颜色 386

15.2.1  QBColor函数 387

15.2.2  RGB函数 387

15.3  图形处理控件 387

15.3.1  Line控件 388

15.3.2  利用Line控件设计分割线 388

15.3.3  Shape控件 389

15.4  图像处理控件 389

15.4.1  Image控件 389

15.4.2  利用Image控件制作小动画 390

15.4.3  PictureBox控件 391

15.4.4  利用PictureBox控件浏览大幅图片 391

15.5  图形属性 392

15.5.1  使用CurrentX和CurrentY属性绘制图形

坐标 392

15.5.2  使用BackColor和ForeColor属性设置

背景色和前景色 393

15.5.3  使用FillColor和FillStyle属性设置填充

效果 394

15.5.4  使用DrawWidth、DrawStyle和DrawMode

属性设置绘制效果 395

15.5.5  使用BorderStyle、BorderWidth和BorderColor属性设置图形的边框效果 397

15.6  图形方法 399

15.6.1  使用Cls方法清屏 399

15.6.2  使用PSet方法画点 399

15.6.3  使用Point方法获取颜色值 400

15.6.4  使用Line方法画线 401

15.6.5  使用Circle方法画圆 402

15.6.6  使用PaintPicture方法绘制图形 403

15.7  图形方法应用实例 404

15.7.1  绘制矩形 404

15.7.2  绘制彩色圆饼 404

15.7.3  绘制抛物线 405

15.8  图像处理函数 406

15.8.1  使用LoadPicture函数加载图像 406

15.8.2  使用SavePicture函数保存图片 407

15.9  实战 407

15.9.1  利用图片实现电影胶片的效果 407

15.9.2  万花筒 408

15.9.3  屏幕放大镜 409

15.9.4  图像颜色吸管 412

15.9.5  图像的合成 413

15.10  小结 414

15.11  学习成果检验 414

第16章  多媒体技术 415

 视频讲解:58分钟

16.1  MMControl控件 416

16.1.1  认识MMControl控件 416

16.1.2  MMControl控件的属性 416

16.1.3  MMControl控件的事件 420

16.2  MediaPlay控件 421

16.2.1  认识MediaPlay控件 421

16.2.2  MediaPlay控件的属性 422

16.2.3  MediaPlay控件的方法 422

16.3  ShockwaveFlash控件 423

16.3.1  认识ShockwaveFlash控件 423

16.3.2  ShockwaveFlash控件的属性 424

16.3.3  ShockwaveFlash控件的方法 424

16.3.4  ShockwaveFlash控件的事件 424

16.4  Animation控件 425

16.4.1  认识Animation控件 425

16.4.2  Animation控件的属性 426

16.4.3  Animation控件的方法 426

16.5  DirectX 427

16.5.1  下载和安装DirectX 427

16.5.2  在VB中使用DirectX 428

16.5.3  利用DirectSound编程实现实时混音 428

16.6  实战 430

16.6.1  CD播放器 430

16.6.2  VCD播放器 431

16.6.3  多媒体演示程序 432

16.6.4  使用ShockwaveFlash控件播放透明

动画 433

16.6.5  仿QQ宠物 434

16.7  小结 436

16.8  学习成果检验 436

第17章  鼠标和键盘处理 437

 视频讲解:71分钟

17.1  鼠标指针的设置 438

17.1.1  设置鼠标指针形状 438

17.1.2  设置鼠标指针为指定的图片 439

17.1.3  设置鼠标指针为指定的动画 439

17.1.4  设置窗体的鼠标样式 440

17.1.5  设置系统的鼠标样式 442

17.2  鼠标事件的响应 444

17.2.1  鼠标单击和双击事件(Click和DblClick

事件) 444

17.2.2  鼠标按下和抬起事件(MouseDown和

MouseUp事件) 445

17.2.3  鼠标移动事件(MouseMove事件) 446

17.3  拖放操作 447

17.3.1  与拖放相关的属性(DragMode和DragIcon

属性) 447

17.3.2  与拖放相关的事件(DragDrop和DragOver

事件) 448

17.3.3  与拖放相关的方法(Move和Drag

方法) 450

17.4  键盘事件的响应 451

17.4.1  KeyDown和KeyUp事件的使用 451

17.4.2  KeyPress事件的使用 452

17.5  实战 453

17.5.1  交换鼠标左右键 453

17.5.2  鼠标跟随 454

17.5.3  为程序设置热键 455

17.5.4  警察抓小偷 456

17.5.5  画桃花 458

17.6  小结 460

17.7  学习成果检验 460

第18章  综合实验(三)--电子相册

模块 461

18.1  电子相册模块概述 462

18.1.1  开发背景 462

18.1.2  需求分析 462

18.1.3  功能结构 462

18.2  关键技术 462

18.2.1  图片翻页效果 462

18.2.2  使用FSO对象操作文件夹和文件 464

18.2.3  分页浏览图片 466

18.2.4  按比例缩小图片 467

18.2.5  文件夹浏览器 468

18.3  主窗体设计 469

18.3.1  功能概述 469

18.3.2  窗体设计 470

18.3.3  窗体初始化 471

18.3.4  相册预览 471

18.3.5  删除相册 472

18.3.6  相片管理 473

18.4  相册管理 474

18.4.1  功能描述 474

18.4.2  窗体设计 474

18.4.3  创建和修改相册 474

18.5  相册浏览设计 476

18.5.1  功能描述 476

18.5.2  窗体设计 476

18.5.3  图片准备 477

18.5.4  翻到下一页 477

18.5.5  翻到上一页 479

18.6  相片幻灯播放 480

18.6.1  功能概述 480

18.6.2  窗体设计 481

18.6.3  窗体初始化 481

18.6.4  动态循环显示图片 481

18.7  查看原图片 483

18.7.1  功能描述 483

18.7.2  窗体设计 484

18.7.3  浏览大图 484

18.8  程序调试及错误处理 485

18.8.1  "移动到"按钮菜单的动态加载错误 485

18.8.2  路径未找到的错误处理 485

18.9  小结 485

18.10  学习成果检验 486

  

第4篇  数据库技术

第19章  数据库开发技术 488

 视频讲解:109分钟

19.1  VB访问数据库 489

19.2  ODBC 489

19.2.1  认识ODBC 489

19.2.2  配置ODBC数据源 489

19.3  Data控件 491

19.3.1  认识Data控件 491

19.3.2  用Data控件连接数据库 491

19.3.3  Data控件的综合应用 492

19.4  DAO对象 493

19.4.1  引用DAO对象 493

19.4.2  DAO对象的子对象 493

19.4.3  DAO对象的综合应用 497

19.5  ADO控件 500

19.5.1  认识ADO控件 500

19.5.2  用ADO控件连接各种数据源 501

19.5.3  用ADO控件连接记录源 502

19.5.4  ADO控件的常用属性、方法和事件 503

19.5.5  ADO控件的综合应用 503

19.6  ADO对象 504

19.6.1  引用ADO对象 504

19.6.2  ADO对象的子对象 505

19.6.3  连接多种数据库(Connection对象) 505

19.6.4  连接记录源(Recordset对象) 506

19.6.5  执行SQL语句(Command对象) 508

19.6.6  ADO对象的综合应用 509

19.7  RDO控件(远程数据控件) 510

19.7.1  引用RDO控件到工程中 510

19.7.2  RDO控件与数据访问相关的属性 510

19.7.3  使用RDO控件连接远程数据库 511

19.8  数据库增、删、改、查技巧 512

19.8.1  存取字段数据的几种方法 512

19.8.2  使用数据绑定控件实现增、删、改 513

19.8.3  非绑定控件的增、删、改 514

19.8.4  使用ADO对象实现增、删、改 514

19.9  实战 516

19.9.1  获取SQL Server服务器中的所有

数据库 516

19.9.2  使用Openschema方法读取数据库结构 516

19.9.3  带图像列表的系统登录程序 517

19.9.4  动态设置ADO控件的属性 520

19.9.5  用DataCombo和DataList显示关系表中的

数据 520

19.10  小结 521

19.11  学习成果检验 522

第20章  数据库控件 523

 视频讲解:73分钟

20.1  DBCombo和DBList控件 524

20.2  DataCombo和DataList控件 524

20.2.1  认识DataCombo和DataList控件 525

20.2.2  DataCombo和DataList控件的属性 525

20.2.3  显示关系表中的数据 526

20.3  DataGrid控件 527

20.3.1  认识DataGrid控件 527

20.3.2  用DataGrid控件显示数据 528

20.3.3  格式化数据 529

20.3.4  锁定数据 530

20.3.5  将DataGrid控件中的数据显示在

文本框中 530

20.4  MSFlexGrid和MSHFlexGrid控件 530

20.4.1  认识MSHFlexGrid控件 531

20.4.2  用MSHFlexGrid控件显示数据 531

20.4.3  数据排序与合并 533

20.4.4  隐藏行或列 534

20.4.5  冻结字段 534

20.5  实战 534

20.5.1  加载企业部门名称 534

20.5.2  驾驶员档案查询 537

20.5.3  结账统计报表 538

20.5.4  个人日记本 540

20.5.5  备忘录 545

20.6  小结 550

20.7  学习成果检验 550

第21章  数据环境设计器及报表生成 551

 视频讲解:110分钟

21.1  添加数据环境对象 552

21.2  Connection对象 553

21.2.1  添加Connection对象 553

21.2.2  连接Connection对象 553

21.3  Command对象 554

21.3.1  创建Command对象 555

21.3.2  Command对象的层次结构 556

21.3.3  字段映射 560

21.4  DataReport报表 561

21.4.1  在工程中添加数据报表设计器 561

21.4.2  数据报表设计器简介 561

21.4.3  DataReport对象的属性和方法 562

21.4.4  设计简单的报表 563

21.5  实战 564

21.5.1  创建数据窗体 564

21.5.2  添加、删除和修改记录 565

21.5.3  向报表中添加日期、时间及页码 567

21.5.4  主明细报表 567

21.5.5  分组统计 569

21.6  小结 570

21.7  学习成果检验 570

第22章  程序调试和错误处理 571

 视频讲解:30分钟

22.1  常见错误 572

22.1.1  编译时错误 572

22.1.2  运行时错误 572

22.1.3  逻辑错误 572

22.2  VB的调试工具 572

22.2.1  设置自动语法检查 572

22.2.2  利用VB的调试工具栏 573

22.3  工作模式 574

22.3.1  设计模式 574

22.3.2  运行模式 574

22.3.3  中断模式 575

22.4  调试方法 575

22.4.1  控制程序的执行 575

22.4.2  设置断点 576

22.4.3  使用立即窗口 576

22.4.4  使用本地窗口 576

22.4.5  使用监视窗口 577

22.5  错误处理语句和对象 578

22.5.1  Err对象 578

22.5.2  捕获错误(On Error语句) 578

22.5.3  退出错误处理(Resume语句) 579

22.5.4  编写错误处理函数 579

22.6  常见错误的处理 580

22.6.1  处理使用SetFocus方法时"无效的过程

调用或参数"错误 580

22.6.2  处理"对象变量或With块变量未设置"

错误 580

22.6.3  处理"找不到工程和库"错误 580

22.6.4  处理没有启动窗体错误 581

22.6.5  处理数组声明时"要求常量表达式"

错误 581

22.7  小结 581

第23章  综合实验(四)--小区物业管理

模块 582

 视频讲解:83分钟

23.1  小区物业管理模块概述 583

23.1.1  模块概述 583

23.1.2  需求分析 583

23.1.3  功能结构 583

23.1.4  程序预览 583

23.2  数据库设计 585

23.2.1  数据库分析 585

23.2.2  数据库逻辑设计 585

23.3  公共模块设计 587

23.4  主窗体设计 588

23.4.1  主窗体模块概述 588

23.4.2  主窗体技术分析 588

23.4.3  主窗体实现过程 589

23.5  系统登录模块设计 593

23.5.1  功能概述 593

23.5.2  系统登录技术分析 594

23.5.3  系统登录实现过程 594

23.6  大楼信息登记设计 595

23.6.1  功能概述 595

23.6.2  技术分析 596

23.6.3  大楼信息登记实现过程 597

23.7  人口查询设计 600

23.7.1  功能概述 600

23.7.2  技术分析 600

23.7.3  实现过程 601

23.8  数据备份设计 603

23.8.1  功能概述 603

23.8.2  技术分析 604

23.8.3  实现过程 604

23.9  小结 606

23.10  学习成果检验 606

  

  

第5篇  项目实战

第24章  企业人事管理系统 608

 视频讲解:248分钟

24.1  需求分析 609

24.2  系统设计 609

24.2.1  系统目标 609

24.2.2  系统功能结构 609

24.2.3  系统预览 609

24.3  数据库设计 611

24.3.1  数据库概要说明 611

24.3.2  数据库概念结构设计 611

24.3.3  数据库逻辑结构设计 613

24.3.4  触发器的创建 615

24.3.5  自动计算列的创建 617

24.4  公共模块设计 618

24.5  主窗体设计 619

24.5.1  主窗体概述 619

24.5.2  技术分析 619

24.5.3  MDI主窗体实现过程 620

24.5.4  菜单实现过程 621

24.5.5  工具栏实现过程 622

24.5.6  背景图窗体自适应 623

24.6  添加员工信息模块设计 623

24.6.1  添加员工信息模块概述 623

24.6.2  技术分析 624

24.6.3  添加员工信息模块的窗体设计 627

24.6.4  使"编号"文本框获得焦点 627

24.6.5  初始化列表项 628

24.6.6  控件焦点的自动转移 629

24.6.7  选择员工照片 629

24.6.8  添加/修改员工信息 630

24.7  添加/修改部门信息模块设计 632

24.7.1  添加/修改部门信息模块概述 632

24.7.2  技术分析 632

24.7.3  添加/修改部门信息模块的窗体设计 633

24.7.4  添加/修改部门信息模块的初始化 634

24.7.5  添加或修改部门信息 634

24.8  添加/修改出勤模块设计 635

24.8.1  添加/修改出勤模块概述 635

24.8.2  技术分析 636

24.8.3  添加/修改出勤模块的窗体设计 637

24.8.4  选择员工实现过程 637

24.8.5  添加/修改出勤记录实现过程 641

24.9  员工公出/请假模块设计 644

24.9.1  员工公出/请假模块概述 644

24.9.2  员工公出/请假模块窗体设计 645

24.9.3  技术分析 645

24.9.4  添加或修改员工公出/请假模块实现

过程 646

24.9.5  员工公出/请假模块实现过程 648

24.10  工资信息管理模块设计 650

24.10.1  工资信息管理模块概述 650

24.10.2  技术分析 650

24.10.3  工资信息管理模块的窗体设计 651

24.10.4  选择工资月份 653

24.10.5  查询工资信息 653

24.10.6  工资信息导为Excel表 654

24.10.7  修改工资信息 654

24.10.8  批量修改工资信息 655

24.10.9  过期工资处理 655

24.11  文件清单 656

24.12  小结 657

第25章  叶子图像处理专家 658

 视频讲解:96分钟

25.1  需求分析 659

25.2  系统设计 659

25.2.1  系统目标 659

25.2.2  系统功能结构 659

25.3  系统运行环境 660

25.4  创建项目 660

25.5  启动窗体的设计 660

25.5.1  设计窗体界面 661

25.5.2  添加资源文件 661

25.5.3  代码注册Flash控件 662

25.5.4  调用Flash动画 663

25.6  主窗体设计 664

25.6.1  设计窗体界面 664

25.6.2  设计菜单栏 664

25.6.3  设计状态栏 666

25.6.4  窗体初始化 666

25.6.5  工具栏调用系统功能 667

25.6.6  打开图片 668

25.6.7  显示历史图片 669

25.6.8  撤销/重复执行 670

25.6.9  浏览大幅图片 671

25.7  图像旋转 673

25.7.1  图像旋转窗体的设计 673

25.7.2  使用二次插值法缩放图片 673

25.7.3  设置旋转角度 675

25.8  图像的剪切与合成 677

25.8.1  设计图像合成窗体 678

25.8.2  利用资源文件加载剪切光标 678

25.8.3  图像的剪切 679

25.8.4  选择合成方式 679

25.8.5  设置合成图片的坐标位置 680

25.8.6  图像的合成 680

25.9  设置图片大小 680

25.9.1  窗体界面设计 681

25.9.2  锁定纵横比率 681

25.9.3  调整图片的大小 682

25.10  "滤镜"窗体的设计 682

25.10.1  设计"滤镜"窗体界面 683

25.10.2  选择滤镜 683

25.10.3  图片预览 685

25.10.4  应用到主窗体图片上 685

25.11  滤镜算法 686

25.11.1  图像锐化算法 686

25.11.2  图像柔化算法 687

25.11.3  图像浮雕算法 688

25.11.4  图像扩散算法 688

25.11.5  图像轮廓算法 689

25.11.6  图像饱和度算法 690

25.11.7  图像亮度算法 691

25.12  运行项目 693

25.13  程序打包 694

25.14  开发中常见问题与解决方案 694

25.14.1  图像框中不显示输出图像 694

25.14.2  Win32系统错误处理 694

25.15  小结 695

附录A  代码编写规则 696

附录B  VB内部函数 699

  

  

  

    Visual Basic开发实战

  

目    录

  

VI

  

  

XVII