第1章 用户界面 1
1.1 窗体 2
范例1-1 创建箭头形窗体 2
相关函数:CreatePolygonRgn SetWindowRgn范例1-2 窗体闪烁特效 3
相关函数:FlashWindow GetActiveWindow范例1-3 带进度条的窗体 5
范例1-4 工作区透明的窗体 6
相关函数:SetWindowLong GetWindowLong范例1-5 带洞的窗体 7
相关函数:CreateRectRgn CombineRgn SetWindowRgn范例1-6 窗体百叶窗效果 9
相关函数:Sleep 10
范例1-7 背景颜色渐变的窗体 10
范例1-8 设置总在最前的窗体 11
相关函数:SetWindowPos 12
范例1-9 实现多文档窗体的排列 12
范例1-10 逐渐展开的程序运行窗口 13
范例1-11 拖动无标题窗体 14
相关函数:ReleaseCapture SendMessage范例1-12 带滚动条的窗体 15
范例1-13 设置能动态改变控件大小的窗体 17
范例1-14 随分辨率大小改变的窗体 17
相关函数:SystemParametersInfo 19
范例1-15 运行窗体的托盘显示 19
相关函数:Shell_NotifyIcon 20
范例1-16 窗体关闭时的提示 20
范例1-17 放大镜 20
相关函数:SystemParametersInfo GetCursorPos StretchBlt范例1-18 全部透明的窗体 23
相关函数:SetLayeredWindowAttributes SetWindowLong 23
1.2 菜单 24
范例1-19 树形导航菜单 24
范例1-20 带图标显示的菜单 25
相关函数:GetMenu GetSubMenu SetMenuItemBitmaps范例1-21 显示历史文件的菜单 26
相关函数:GetSetting SaveSetting范例1-22 右键弹出式菜单 29
相关函数:PopupMenu 30
范例1-23 下拉式菜单 30
范例1-24 动态显示菜单 31
范例1-25 系统菜单DIY 32
相关函数:GetSytemMenu AppendMenu范例1-26 炫彩菜单 33
相关函数:RGB 34
范例1-27 动态增加菜单 34
相关函数:GetMenu AppendMenu GetSubMenu范例1-28 隐藏和显示菜单 36
相关函数:GeMenu SetMenu 37
范例1-29 设置多列菜单 37
相关函数:GetMenu GetMenuItemInfo SetMenuItemInfo DrawMenuBar范例1-30 隐藏系统菜单 39
相关函数:RemoveMenu GetSystemMenu范例1-31 闪烁菜单 41
相关函数:RGB 42
1.3 工具栏 42
范例1-32 可竖排显示的工具栏 42
相关函数:SendMessage ReleaseCapture GetWindowRect范例1-33 下拉式工具栏 44
范例1-34 工具栏按钮的灰度显示 45
范例1-35 浮动的工具栏 47
相关函数:GetCursorPos 48
1.4 状态栏 48
范例1-36 在状态栏中显示鼠标位置 48
相关函数:GetCursorPos 49
范例1-37 状态栏显示系统时间和日期 49
相关函数:Now 50
范例1-38 循环滚动文字的状态栏 50
相关函数:Right Left 51
范例1-39 状态栏按钮的灰度显示 51
范例1-40 显示文本行数的状态栏 53
相关函数:SendMessage 54
范例1-41 状态栏显示当前文本的列数 54
相关函数:SendMessage 55
1.5 标题栏 55
范例1-42 显示或隐藏标题栏 55
相关函数:SetWindowLong GetWindowLong SetWindowPos范例1-43 标题栏双击无效 57
相关函数:SetWindowLong CallWindowProe范例1-44 屏蔽标题栏关闭按钮 59
相关函数:GetSystemMenu GetMenultemCount DeleteMenu 59
1.6 任务栏 60
范例1-45 设置透明的任务栏 60
相关函数:GetWindowLong SetWindowLong FindWindow SetLayeredWindowAttributes范例1-46 在任务栏上隐藏运行程序图标 62
1.7 风格按钮 62
范例1-47 立体阴影按钮 62
范例1-48 炫彩立体按钮 64
1.8 本章小结 65
第2章 控件 67
2.1 TextBox控件 68
范例2-1 只允许输入数字的文本框 68
范例2-2 为TextBox控件添加快捷菜单 69
范例2-3 TextBox文本的定位 70
相关函数:SendMessage 71
范例2-4 应用文本框保存和打开文本 71
范例2-5 获取焦点后文本全选 72
范例2-6 具有记忆功能的文本框 73
2.2 ListBox控件 74
范例2-7 ListBox列表项按数字排列 74
相关函数:Mid InStr Left 76
范例2-8 ListBox输入重复内容的校验 76
范例2-9 两个ListBox控件的同步显示 77
范例2-10 ListBox控件间的数据操作 78
范例2-11 具有水平滚动条的ListBox控件 80
相关函数:SendMessage 81
2.3 ComboBox控件 81
范例2-12 在ComboBox中添加复选框 81
相关函数:SendMessage FindWindowEx范例2-13 调整ComboBox列表项的宽度 83
相关函数:SendMessage 84
范例2-14 调整ComboBox列表项的高度 84
相关函数:MoveWindow 86
2.4 TreeView控件 86
范例2-15 列表框显示TreeView节点内容 86
范例2-16 TreeView连接Access数据库 87
范例2-17 具有多级结构的TreeView控件 89
范例2-18 为TreeView添加快捷菜单 91
2.5 ListView控件 92
范例2-19 ListView显示人名头像信息 92
范例2-20 在ListView中显示数据库表名 94
范例2-21 ListView显示程序ico图标 96
相关函数:SHGetFileInfo ImageList_Draw范例2-22 ListView浏览布尔型数据 98
2.6 RichTextBox控件 100
范例2-23 RichTextBox控件加载图文数据 100
范例2-24 为RichTextBox添加快捷菜单 102
范例2-25 同时高亮显示特定字符 103
范例2-26 RichTextBox打开和保存文件 104
2.7 MSFLexGrid控件 105
范例2-27 MSFLexGrid连接数据库 105
范例2-28 MSFLexGrid添加右键快捷菜单 107
范例2-29 MSFLexGrid分类显示数据 109
2.8 DataGrid控件 111
范例2-30 在DataGrid中加入组合框 111
范例2-31 DataGrid关联Dat文件 112
范例2-32 DataGrid操作txt文件 114
2.9 选择类系列控件 116
范例2-33 CheckBox设置权限 116
范例2-34 Option控件辅助模糊查询 117
范例2-35 Option按钮组合ComboBox 120
相关函数:SendMessage FindWindowEx 120
2.10 图形类系列控件 121
范例2-36 模仿MSN抖动效果的图片框 121
相关函数:Randomize Rnd 123
范例2-37 Line控件实现秒表功能 123
范例2-38 PictureBox绑定Access数据库 124
范例2-39 随鼠标自行移动的PictureBox 125
相关函数:GetCursorPos 127
范例2-40 Image加载不同类型的图片 127
范例2-41 Shape控件绘制基本图形 128
2.11 MSChart控件 129
范例2-42 MSChart控件加载数组数据 129
范例2-43 MSChart控件关联数据库 130
范例2-44 MSChart控件绘制余弦曲线 132
范例2-45 MSChart控件绘制立体图表 133
2.12 控件特效 134
范例2-46 PictrueBox绘制动画 134
相关函数:Randomize Rnd 136
范例2-47 Timer实现随机抽取手机号码 136
相关函数:Randomize Rnd 138
范例2-48 纪念日倒计时 138
范例2-49 Shape控件实现圆角按钮 140
相关函数:GetCursorPos RGB 142
2.13 控件数组及其他 142
范例2-50 动态增加控件 142
范例2-51 动态改变控件大小 142
相关函数:InStr Mid 144
2.14 本章小结 144
第3章 文字处理 145
3.1 文字的转换 146
范例3-1 数字转换成英文 146
相关函数:Val 149
范例3-2 数字转换成汉字 149
相关函数:CDec CStr Left Trim Mid Vat Len范例3-3 十进制转换为二进制 151
相关函数:Left Sgn Mod 154
范例3-4 二进制转换为十六进制 154
相关函数:Len Mid InStr 157
范例3-5 汉字与区位码相互转换 157
相关函数:Clnt Mid StrConv 159
3.2 对文字处理的限制 159
范例3-6 限制输入字符个数 159
相关函数:Left Mid Asc 161
范例3-7 限制输入英文字母 161
相关函数:UCase 162
范例3-8 禁止输入非法字符 162
3.3 进行字符串处理 164
范例3-9 分解字符串 164
相关函数:Mid 166
范例3-10 自动完成字符串填写 166
相关函数:GetSystemDirectory SendMessage Space$ Chr$ Dir$范例3-11 字符串的查找 169
相关函数:InStr 171
3.4 字符统计 171
范例3-12 字符统计 171
相关函数:Len Mid 173
范例3-13 字符串的Unicode和Ansi统计 173
相关函数:StrConv Len Str 174
3.5 实现文字特效 174
范例3-14 使文字具有闪烁特效 174
范例3-15 实现文字的跑马灯效果 176
相关函数:String Left Mid 177
范例3-16 实现文字的淡入淡出 177
范例3-17 实现文字的旋转效果 179
相关函数:CerateFontIndirect DeleteObject SelectObject范例3-18 实现文字的蒙版特效 181
相关函数:BeginPath EndPath PathToRegion SetWindowRgn范例3-19 实现Word艺术字效果 183
范例3-20 实现文字的阴影特效 184
范例3-21 实现文字的近大远小特效 187
相关函数:Sleep 188
范例3-22 创建动态文字标语 188
相关函数:timeGetTime SetTextCharacterExtra FillRect CroateSolidBrush DeleteObject GetSysColor DrawText范例3-23 实现仿打字效果 192
相关函数:SendKey Len StrConv范例3-24 实现空心文字特效 194
相关函数:BeginPath TextOut EndPath StrokePath 194
3.6 其他 195
范例3-25 冒泡法排列数字 195
相关函数:LRound UBound CStr范例3-26 读取鼠标位置的单词 197
相关函数:RtlMoveMemory SendMessage 197
3.6 本章小结 200
第4章 文件操作 201
4.1 文件的读取与保存 202
范例4-1 按照十六进制显示文件 202
相关函数:Format 204
范例4-2 TextStream对象读/写文本文件 204
相关函数:TextStream TextStream范例4-3 制作系统日志文件 206
4.2 与文件相关的控件与对象 208
范例4-4 保存文件路径到数据库 208
相关函数:Execure 210
范例4-5 根据数据库信息创建文件夹 210
相关函数:CreatFolder 211
范例4-6 简易文件浏览器 211
4.3 文件目录操作 214
范例4-7 查看文件夹属性 214
相关函数:ShellExecuteEx 216
范例4-8 删除文件目录 216
相关函数:DeleteFolder 217
范例4-9 文件目录的重命名 217
相关函数:Name 219
范例4-10 保存文件目录到INI文件 219
相关函数:ListCount 220
范例4-11 提取文件夹目录到Word文档 220
相关函数:CreatObject 222
4.4 INI文件操作 222
范例4-12 创建INI文件 222
相关函数:WritePrivateProfileString范例4-13 读取INI文件 223
相关函数:Open 224
范例4-14 INI文件的写入 224
相关函数:GetPrivateProfileInt WrirtPrivateProfileString范例4-15 利用INI文件实现软件注册 226
相关函数:GetPrivateProfileString WritePrivateProfileString 226
4.5 文件及文件夹的复制与移动 229
范例4-16 单个文件的复制 229
相关函数:CopyFile 230
范例4-17 文件的批量复制 230
相关函数:CopyFolder 232
范例4-18 文件的批量移动 232
相关函数:MoveFile 234
4.6 文件的修改与删除 234
范例4-19 批量重命名文件 234
相关函数:Name 235
范例4-20 删除指定类型文件 235
相关函数:Kill 237
范例4-21 删除文件到回收站 237
相关函数:SHFileOperation 239
范例4-22 清空回收站 239
相关函数:SHEmptyRecycleBin SHUpdateRecycleBinIcon SHQueryRecycleBin范例4-23 获取回收站信息 240
相关函数:SHQueryRecycleBin 242
4.7 文件的查找与提取 242
范例4-24 文件检查 242
相关函数:Dir attributes 244
范例4-25 递归方式查找文件 244
相关函数:Dir attributes 246
范例4-26 快速查找指定类型文件 246
相关函数:FindFirstFile FindNextFile FindClose范例4-27 提取文件名到Word文档 249
相关函数:RTrim Left Right 249
4.8 文件管理 252
范例4-28 查看文件属性设置 252
相关函数:GetAttr 254
范例4-29 获取文件基本信息 254
相关函数:SHGetFileInfo ImageList_Draw范例4-30 获取位图文件信息 256
相关函数:GetObject GetBitmapBits范例4-31 批量改变文件属性设置 258
相关函数:SetAttr 260
4.9 文件对象 260
范例4-32 获取应用程序对象 260
相关函数:GetObject 262
范例4-33 自动识别文件路径 262
相关函数:Path 263
4.10 加密与解密 263
范例4-34 文本的加密 263
相关函数:Asc 265
范例4-35 文本夹的加密 265
相关函数:Name 267
4.11 其他 267
范例4-36 创建文件关联 267
相关函数:RegCreateKey RegSetValue范例4-37 文件的拖放 269
相关函数:SetWindowLong CallWindowProc DragQueryFile DragAcceptFile DragFinish范例4-38 文件复制过程中显示进度条 271
范例4-39 提示是否保存文件更改信息 273
范例4-40 用WinRAR压缩和解压文件 275
相关函数:Shell 277
范例4-41 建立临时文件 277
相关函数:GetSystemDirectory范例4-42 设置文件和文件夹的显示方式 279
相关函数:RegSetValueEx RegDeleteValue RegOpenKey RegCloseKey4.12 本章小结 281
第5章 图形图像处理 283
5.1 图形转换和缩放 284
范例5-1 图片格式的相互转换 284
相关函数:SavePicture MagBox buttons范例5-2 图片的缩放 286
范例5-3 图片的平移 288
5.2 绘制图形 289
范例5-4 绘制三角形 289
相关函数:Object.X1,Object.Y1.Object.X2.Object.Y 2
范例5-5 绘制三角函数曲线 290
相关函数:Object.Line Object.Scale Object.PSet范例5-6 输入参数绘制圆形 293
相关函数:Object.Scalc Object.Circle范例5-7 简易画图工具 294
相关函数:Object.Line Object.Circle范例5-8 绘制立体球形 297
相关函数:Object.PSet 298
5.3 图片显示效果 298
范例5-9 图片从左向右显示效果 298
相关函数:Object.PaintPicture Sleep范例5-10 乱屏效果 300
相关函数:BitBlt Sleep 301
5.4 图片浏览 301
范例5-11 浏览大幅图片 301
相关函数:LondPicture 303
范例5-12 图片自动浏览 303
相关函数:LoadPicture 304
范例5-13 滚动放映图片 304
5.5 滤镜 306
范例5-14 图片的柔化 306
相关函数:Object.Point Object.PSet范例5-15 图片的锐化 308
相关函数:Object.Point Object.PSet范例5-16 浮雕效果 310
相关函数:Object.Point Object.PSet范例5-17 木刻效果 311
相关函数:Object.Point Object.PSet范例5-18 油画效果 313
相关函数:Object.Point Object.PSet Rnd范例5-19 灯光效果 315
相关函数:Object.Point Object.PSet范例5-20 马赛克效果 318
相关函数:Object.Point LoadPicture Object.PSet范例5-21 铅笔画效果 320
相关函数:Object.Point Object.PSet 320
5.6 色彩调整 322
范例5-22 调节色彩平衡 322
相关函数:Object.Point Object.PSet范例5-23 调整图片对比度 324
相关函数:Object.Point Object.PSet范例5-24 反转图片颜色 326
相关函数:Object.PaintPicture范例5-25 转换灰度图片 328
相关函数:GetPixel SetPixel 328
5.7 图像变换 330
范例5-26 任意角度旋转图片 330
相关函数:Object.PSet 332
范例5-27 图片快速翻转 332
相关函数:Object.PaintPicture范例5-28 图片的波浪化 333
相关函数:Object.Point Object.PSet 333
5.8 图片的剪切与合成 335
范例5-29 图像的剪切 335
相关函数:IIF PictureClip MouseDown MouseMove MouseUp Object.Line范例5-30 图片的合成 348
相关函数:Object.PaintPicture LoadPicture SavePicture 348
5.9 图形动画 341
范例5-31 生成随机图像 341
相关函数:Objet.Line Rnd 343
范例5-32 图片的抖动 343
相关函数:BitBlt Rnd 345
范例5-33 图像的淡入淡出 345
相关函数:AlphaBlend BLENDFUNCTION CopyMemory Sleep 345
5.10 图像识别 347
范例5-34 获取图片任意位置像素颜色 347
相关函数:MouseDown.MouseMove.MouseUp Object.Point范例5-35 图片比较 349
相关函数:Object.Point Object.PSet 349
5.11 其他应用 352
范例5-36 快速更换桌面 352
相关函数:SystemParametersInfo 352
5.12 本章小结 353
第6章 网络通信与控制 355
6.1 计算机与局域网操作 356
范例6-1 获取本机IP地址及计算机名 356
范例6-2 获取指定计算机的IP 356
相关函数:WSAStartup WSACleanup CopyMemory gethostbyname范例6-3 重新设置计算机名 359
相关函数:GetComputerName SetComputerName范例6-4 Ping对方计算机 360
相关函数:IempCreateFile IempCloseHandle IempSendEcho范例6-5 网络聊天室 363
相关函数:Winsock 365
6.2 网络连接控制 365
范例6-6 检测网络连接状况 365
相关函数:InternetGetConnectedState范例6-7 即时检测是否连接网络 366
相关函数:InternetGetConnectedStata范例6-8 判断是否连接网络 368
相关函数:Len 368
范例6-9 判断是否建立拨号连接 368
相关函数:RegOpenKey RegCloseKey RegQueryValueEx范例6-10 拨号上网及挂断 371
相关函数:InternetDial InternetHangUp6.3 IE操作 372
范例6-11 修改IE标题栏的内容 372
相关函数:RegCreateKey RegSetValueEx RegCloseKey范例6-12 修改IE主页 374
相关函数:RegCreateKey RegSetValueEx RegCloseKey范例6-13 隐藏IE浏览器右键关联菜单 375
相关函数:RegCreateKey RegSetValueEx RegCloseKey范例6-14 去除浏览器中的Internet选项 377
相关函数:RegCloseKey RegCreateKey RegSetValueEx RegDeleteValne范例6-15 清除IE浏览历史记录 379
相关函数:RegCreateKey RegDeleteValue范例6-16 自动启动IE浏览器 380
相关函数:ShellExecure RasEnumConnections RasGetConnectStatus范例6-17 禁用“重置 Web设量” 383
相关函数:RegCloseKey RegCreateKey RegSetValueEx RegDeleteValue6.4 网上数据复制 385
范例6-18 网络复制文件 385
相关函数:CreateObject CopyFolder Trim范例6-19 下载文件 386
相关函数:DoFileDownload StrConv6.5 网络信息提取 387
范例6-20 显示网页源代码 387
6.6 网络共享操作 389
范例6-21 获得共享信息与用户名 389
相关函数:GetObject 390
范例6-22 网络共享控制 390
相关函数:netshare 392
范例6-23 创建网络映射驱动器 392
相关函数:WNetAddConneetion 2
范例6-24 获取网卡的物理地址 394
相关函数:Netbios CopyMemory GetProcessHeap HeapAlloc HeapFree范例6-25 检测有无映射驱动器 396
相关函数:WNetGetConnection 398
范例6-26 计算本机串口数 398
6.7 其他操作 399
范例6-27 隐藏网上邻居 399
相关函数:RegCreateKey RegSetValueEx RegCloseKey RegDeleteValue范例6-28 调用网络搜索引擎 401
范例6-29 创建超链接 402
相关函数:ShellExecute 403
范例6-30 获得拨号网络列表 403
相关函数:RasEnumConnections RasEnumEntries 403
6.8 本章小结 406
第7章 多媒体操作 407
7.1 动画与视频 408
范例7-1 播放Gif动画 408
范例7-2 PictureBox控件制作Gif动画 408
范例7-3 播放AVI动画 409
范例7-4 播放rmvb文件 410
范例7-5 播放Flash动画 411
范例7-6 制作电影播放列表 412
范例7-7 全窗口播放电影 414
范例7-8 制作下雪动画 416
相关函数:Randomize Rnd 417
7.2 音频的制作与播放 417
范例7-9 循环播放WAV音频文件 417
相关函数:sndPlaySound 418
范例7-10 测试声卡 418
相关函数:waveOutGetNumDevs 419
范例7-11 调整系统音量 419
相关函数:waveOutGetVolume waveOutSetVolume范例7-12 具有记忆功能的MP3播放器 420
范例7-13 具有音效的按钮 421
相关函数:meiSendString 423
范例7-14 自制录音软件 423
相关函数:meiSendString 424
7.3 多媒体综合应用 424
范例7-15 测试听力 424
相关函数:Beep 426
范例7-16 制作发音的电话拨号盘 426
相关函数:Beep 427
范例7-17 定时提醒的闹钟 427
相关函数:metSendString 429
范例7-18 屏保系列之图片屏保 429
相关函数:ShowCursor 432
范例7-19 屏保系列之音乐屏保 432
相关函数:ShowCursor 433
范例7-20 屏保系列之十八罗汉屏保 433
相关函数:ShowCursor 436
范例7-21 课件系列之一元二次方程课件 436
范例7-22 课件系列之示波器 437
范例7-23 课件系列之盲打训练 439
范例7-24 课件系列之物理碰撞演示 441
范例7-25 课件系列之看图学英文 443
7.4 Anim ation控件的使用 444
范例7-26 为电影制作背景音乐 444
范例7-27 选定帧播放电影 446
7.5 本章小结 447
第8章 系统控制 449
8.1 系统启动控制 450
范例8-1 进入Windows XP前弹出提示信息 450
相关函数:RegCreateKey RegSetValueEx RegOpenKeyEx RegQueryValueEx RegDeleteValue范例8-2 计算机的关机、注销与重启 452
相关函数:ExitWindowsEx GetCurrentProcess OpenProcessToken范例8-3 设置开机启动程序 455
相关函数:RegOpenKey RegCloseKey RegSetValueEx RegDeleteValue8.2 获取系统信息 458
范例8-4 获得操作系统版本 458
相关函数:GetVersionEx Len Str范例8-5 获取操作系统目录 460
相关函数:GetWindowsDirectory GetSystemDirectory范例8-6 获取系统字体数 461
相关函数:Fonts FontCount 462
范例8-7 启动控制面板选项 462
相关函数:Shell 464
8.3 系统相关操作 464
范例8-8 CPU使用情况测试 464
相关函数:PdhOpenQuery PdhCloseQuery PdhVbAddCounter PdhCollectQueryData PdhVbGetDoubleCounterVaule范例8-9 查看内存容量 467
相关函数:GlobalMemoryStatus范例8-10 系统延时操作 468
相关函数:Sleep 470
范例8-11 Ctrl+Alt+Del的开启与关闭 470
相关函数:SystemParametersInfo范例8-12 更改输入法顺序 471
相关函数:GetKeyboardLayoutList ActivateKeyboardLayout 471
8.4 显示与隐藏 473
范例8-13 隐藏与显示桌面文件 473
相关函数:RegCreateKey RegSetValueEx RegOpenKeyEx RegQueryValueEx范例8-14 隐藏与显示“我的电脑” 476
相关函数:RegSetValueEx RegOpenKey RegCloseKey范例8-15 隐藏与显示开始按钮 477
相关函数:FindWindow FindWindowEx ShowWindow范例8-16 隐藏和显示任务栏 479
相关函数:FindWindow SetWindowPos 479
8.5 程序运行操作 481
范例8-17 停止运行指定程序 481
相关函数:FindWindow PostMessage范例8-18 防止程序同时多次运行 482
相关函数:App.PrevInstanee 483
范例8-19 列表显示系统当前运行程序名 483
相关函数:EnumWindows GetWindowText范例8-20 为程序添加热键 485
相关函数:KeyDown 487
8.6 注册表控制 487
范例8-21 控制使用注册表编辑器 487
相关函数:RegCreateKey RegSetValueEx RegOpenKey RegCloseKey RegDeleteKey范例8-22 注册表实现系统登录 489
相关函数:SaveSetting GetAllSettings范例8-23 控制使用“显示”选项 491
相关函数:RegCreateKey RegSetValueEx RegDeleteValue RegCloseKey范例8-24 判断ActiveX控件注册状态 493
相关函数:GetAutoServerSettings 494
范例8-25 控制软件试用期 494
相关函数:GetSetting 495
8.7 窗体与墙纸操作 495
范例8-26 设置窗体颜色 495
相关函数:RegQueryValueEx RegOpenKey RegCloseKey SetSysColors范例8-27 获得窗体的高度和宽度 498
相关函数:GetCliemRect Print Print Tab范例8-28 控制改变墙纸操作 500
相关函数:RegCreateKey RegSetValueEx RegDeleteValue RegCloseKey 500
8.8 系统游戏控制 502
范例8-29 修改“蜘蛛纸牌”游戏设置 502
相关函数:RegSetValueEx RegOpenKey RegCloseKey范例8-30 修改“扫雷”游戏设置 504
相关函数:RegSetValueEx RegOpenKey RegCloseKey 504
8.9 其他系统相关操作 506
范例8-31 调用Office助手 506
相关函数:Agent 507
8.10 本章小结 507
第9章 硬件相关操作 509
9.1 显示屏 510
范例9-1 设置显示屏的分辨率 510
相关函数:SystemParametersInfo ChangeDisplaySettings范例9-2 设置屏幕的刷新频率 512
相关函数:ChangeDisplaySettings范例9-3 选定区域抓取屏幕图像 514
相关函数:OpenClipboard EmptyClipboard SetClipboardData SetectObject DeleteDC BitBlt CreateDC CreateCompatibleDC CreateCompatibleBitmap CloseClipboard GetCursorPos9.2 鼠标 518
范例9-4 设置鼠标双击的间隔时间 518
相关函数:GetDoubleCliekTime SetDoubleClickTime范例9-5 获取鼠标信息的Hook 519
相关函数:SetWindowsHookEx UnhookWindowsHookEx CallNextHookEx CopyMemory ScreeToClient GetWindowsDirectory SendKeys范例9-6 隐藏和显示鼠标 523
相关函数:ShowCursor 523
范例9-7 程序控制鼠标的位置 523
相关函数:SetCursorPos 525
范例9-8 设置动画鼠标 525
相关函数:LoadCursorFromFile SetSystemCursor范例9-9 显示鼠标停留的控件信息 526
相关函数:SetCapture ReleaseCapture范例9-10 限制鼠标活动的区域 527
相关函数:ClipCursor 528
9.3 键盘 528
范例9-11 禁止键盘输入 528
相关函数:SetWindowsHookEx UnhookWindowsHookEx CallNextHookEx范例9-12 判断键盘状态 530
相关函数:GetKeyboardState 531
范例9-13 模拟键盘输入 531
相关函数:keybd_event 532
9.4 硬盘 532
范例9-14 读取硬盘容量信息 532
相关函数:GetDiskFreeSpaceEx范例9-15 获取盘符类型 534
相关函数:GetDriveType 535
范例9-16 获取硬盘序列号 535
相关函数:GetDriveType GetVolumeInformation9.5 光驱 536
范例9-17 打开和关闭光驱 536
相关函数:CDdoor 538
范例9-18 获取光驱盘符路径 538
相关函数:GetDviveType 539
范例9-19 检测光驱中是否有光盘 539
相关函数:meiSendString 540
9.6 条形码 540
范例9-20 制作条形码 540
范例9-21 从数据库中读取条形码 541
9.7 打印机 543
范例9-22 调用系统打印对话框 543
相关函数:PrintDlg 545
范例9-23 显示所有的系统打印机 545
范例9-24 设置默认的打印机 546
9.8 其他硬件相关 547
范例9-25 读取内存信息 547
相关函数:GlobalMemoryStatus范例9-26 隐藏所有盘符显示图标 548
相关函数:RegSetVatueEx RegDeleteValue RegOpenKey RegCloseKey 548
9.9 本章小结 550
第10章 数据库处理 551
10.1 数据库的创建 552
范例10-1 DAO动态创建Access数据库 552
范例10-2 创建加密的数据库 553
范例10-3 ADOX动态创建数据库 554
10.2 数据库的访问 555
范例10-4 DAO连接Access数据库 555
范例10-5 DAO连接加密数据库 557
范例10-6 ADO连接加密数据库 558
范例10-7 Data控件连接数据库 559
范例10-8 DAO结合MSChart显示数据 560
范例10-9 DAO显示数据库的所有表名 561
范例10-10 分页显示数据 562
范例10-11 以不同颜色显示数据 564
范例10-12 数据的排序显示 566
范例10-13 数据的过滤显示 567
范例10-14 显示前三名的数据 569
范例10-15 追加记录 570
范例10-16 模仿Excel追加记录 572
范例10-17 在任意位置插入记录 574
范例10-18 修改记录 576
范例10-19 删除记录 579
范例10-20 图片数据在数据库中的存取策略 580
范例10-21 将音频文件存入数据库 582
范例10-22 读取二进制数据 584
范例10-23 数据库的更新 586
范例10-24 将二进制数据以文本文件输出 588
10.3 数据库的安全与维护 590
范例10-25 数据库的备份 590
相关函数:FileCopy 592
范例10-26 数据库定期备份 592
相关函数:FileCopy 594
范例10-27 数据库的恢复 594
相关函数:FileCopy 596
范例10-28 数据库的压缩 596
相关函数:CompactDataBase 597
范例10-29 数据库的修复 597
相关函数:RepairDataBase 598
范例10-30 数据库的锁定与解锁 598
范例10-31 密码管理 600
10.4 SQL语言 601
范例10-32 查询日期数据 601
范例10-33 Like关键字 603
范例10-34 Between关键字 604
范例10-35 Distinct关键字 606
范例10-36 Union关键字 609
范例10-37 Join关键字 610
范例10-38 In关键字 612
范例10-39 Insert关键字 614
范例10-40 Group和Having关键字 616
范例10-41 创建临时表 618
范例10-42 Count函数 619
范例10-43 Avg函数 620
10.5 其他数据库相关 621
范例10-44 存储过程的创建 621
相关函数:TilePuzzle 623
范例10-45 存储过程的调用 623
10.6 本章小结 624
第11章 游戏制作 625
范例11-1 押宝游戏 626
相关函数:BitBlt 628
范例11-2 抽奖游戏 628
相关函数:Randomize Rnd Int Str范例11-3 打砖块游戏 630
相关函数:Randomize Rnd Int范例11-4 拼图游戏 633
范例11-5 猜数字游戏 636
相关函数:KeyPress Randomize Rnd Int范例11-6 求爱游戏 641
相关函数:CreateRectRgn CombineRgn SetWindowRgn DeleteObject SetWindowPos第12章 程序运行控制 645
12.1 调用系统工具 646
范例12-1 调用记事本程序 646
相关函数:GetWindowsDirectory Sendkeys范例12-2 设置输入法 647
相关函数:GetKeyboardLayoutList ImmIsIME ImmGetDescription ActivateKeyoardLayout范例12-3 调用计算器 649
相关函数:Shell 650
范例12-4 调用写字板 650
相关函数:Shell 650
12.2 调用Office工具 650
范例12-5 将文本写入Word 650
范例12-6 利用Word实现字数统计 651
范例12-7 打开PPT文件 653
范例12-8 打开Excel文件 654
12.3 异常处理与调试 656
范例12-9 On error实现文件搜索 656
范例12-10 Debug对象的使用 657
12.4 线程管理 658
范例12-11 显示所有线程 658
相关函数:CreateToolhelp32Snapshot Process32Next Process32First ClseHandle范例12-12 中止当前线程 660
相关函数:GetCurtemThrrad GetExitCodeThread TerminateThread CloseHandle12.5 本章小结 662
第13章 程序性能优化 663
范例13-1 获取代码执行的速度 664
相关函数:timeGetTime 665
范例13-2 优化程序运行的速度 665
相关函数:timeGetTime 666
范例13-3 Image与PictureBox性能比较 666
范例13-4 Line与PSet性能比较 667
范例13-5 Move与Top/Left速度比较 669
相关函数:timeGetTime 670
范例13-6 Show方法加快窗体的显示 670
相关函数:Sleep 671
范例13-7 ByVal和ByRef传参方式比较 671
相关函数:timeGetTime 675
第14章 特殊API函数 675
范例14-1 AnimateWindow函数 676
相关函数:AnimateWindow 676
范例14-2 PatBlt函数 676
相关函数:CreatePatternBrush PatBlt CreateBitmap SelectObject范例14-3 GetSystemPowerStatus函数 678
相关函数:GetSystemPowerStatus范例14-4 AdjustTokenPrivileges函数 680
相关函数:AdjustTokenPrivileges GetCurrentProcess OpenProcessToken LookupPrivilegeValue GetTickCount ExitWindowsEx范例14-5 SystemParametersInfo函数 684
相关函数:SystemParametersInfo范例14-6 GetWindowText函数 685
相关函数:GetWindowText 686
范例14-7 SetParent函数 686
相关函数:SetParent FindWindow范例14-8 Sleep函数 687
相关函数:Sleep FlashWindow范例14-9 PolyBezier函数 688
相关函数:PolyBezier 690
范例14-10 GetSystemMetrics函数 690
相关函数:GetSystemMetrics 693
第15章 OLE与ActiveX文档 693
范例15-1 动态创建OLE对象 694
范例15-2 保存OLE对象 695
范例15-3 打开OLE文件 696
范例15-4 创建ActiveX文档 697
范例15-5 HTML语言加载ActiveX文档 698
第16章 报表与打印 701
16.1 打印窗体 702
范例16-1 打印窗体及其控件中数据 702
相关函数:PrintForm 703
范例16-2 打印窗体文本 703
相关函数: Print Print Tab范例16-3 打印DBGrid表格中的数据 705
相关函数:Print 707
16.2 打印图片 707
范例16-4 打印图片 707
相关函数:PaintPicture 709
范例16-5 打印客房登记证 709
相关函数: PaintPicture 712
16.3 利用报表生成器设计报表 712
范例16-6 简单报表打印 712
范例16-7 分组统计报表打印 714
范例16-8 主明细报表打印 716
16.4 打印工作证和单据 719
范例16-9 批量打印工作证 719
范例16-10 打印邮政汇款单 721
相关函数:Printer 726
范例16-11 打印订单 726
相关函数:Printer 728
16.5 打印条形码和标签 728
范例16-12 打印条形码 728
相关函数:PrintForm 730
范例16-13 打印信封标签 730
范例16-14 打印连续号码标签 732
相关函数:Printer NewPage 733
16.6 其他格式报表打印 733
范例16-15 利用Excel打印报表 733
相关函数:While...Wend 735
范例16-16 利用Excel生成折线图 735
相关函数:CrearObject 736
范例16-17 利用Word打印报表 736
相关函数:CrearObject 738
范例16-18 图表显示数据并打印 738
相关函数:PaintPicture 741
16.7 打印控制 741
范例16-19 打印过程中自动换行的处理 741
相关函数:InSir Mid Trim 743
范例16-20 打印过程中自动换页处理 743
相关函数:NewPage Format 745
范例16-21 批量打印Word文档 745
相关函数:ShellExecute 746
范例16-22 打印大字体 746
相关函数:Print 748
16.8 本章小结 748
第17章 其他应用 749
范例17-1 调用帮助文档 750
相关函数:Sendkeys 750
范例17-2 显示所有的输入法 750
相关函数:GetKeyboardLayoutName GetKeyboardLayoutList ActivateKeyboardLayout范例17-3 获取程序的ico图标文件 752
相关函数:SHGetFileInfo ImageList_Draw范例17-4 格式化用户的输入 754
范例17-5 日历控件辅助输入 755
范例17-6 有记忆功能的计算器 756
范例17-7 调整窗口在屏幕中的位置 759
范例17-8 创建关于对话框 760
相关函数:ShellAbout 761
范例17-9 鼠标画图 761
范例17-10 判断闰年 762
范例17-11 Visual Basic与MATLAB程序综合应用 763
范例17-12 Visual Basic与Excel的综合应用 765
索引 767
参考文献 776