Visual Basic程序设计与开发技术大全PDF电子书下载
- 电子书积分:20 积分如何计算积分?
- 作 者:求是科技编著
- 出 版 社:北京:人民邮电出版社
- 出版年份:2004
- ISBN:7115125147
- 页数:717 页
第1章 认识Visual Basic 1
1.1 Visual Basic概述 1
1.1.1 Visual Basic简介 1
1.1.2 Visual Basic的发展历程 1
1.1.3 Visual Basic的特点 2
1.2 Visual Basic 6.0的主要特性 2
1.2.1 功能强大的数据访问 2
1.2.2 Internet编程 3
1.2.3 使用新的控件 4
1.2.4 利用增强的控件提高性能 5
1.2.5 熟悉语言特性 5
1.2.6 增强的向导功能 6
1.3 安装、启动和退出Visual Basic 7
1.3.1 Visual Basic 6.0的运行环境 7
1.3.2 安装Visual Basic 6.0 7
1.3.3 启动和退出Visual Basic 6.0 10
1.4 Visual Basic的集成开发环境 12
1.4.1 集成环境中的各子窗口 12
1.4.2 菜单栏 14
1.4.3 工具栏 17
1.5 定制集成开发环境 17
1.5.1 定制工具栏 18
1.5.2 定制窗口位置 19
1.5.3 定制菜单栏 19
1.5.4 定制工具箱中的控件 20
1.6 获得帮助 21
1.6.1 使用MSDN Library 21
1.6.2 在MSDN Library中定位信息 21
1.6.3 自定义MSDN Library 22
第2章 Visual Basic语言基础 24
2.1 程序设计的基本概念 24
2.1.1 标识符 24
2.1.2 运算符 24
2.1.3 书写规则 25
2.2 数据类型 28
2.2.1 基本数据类型 28
2.2.2 自定义数据类型 31
2.3 常量及变量 31
2.3.1 常量 31
2.3.2 变量 32
2.3.3 Option Explicit语句 33
2.3.4 常量和变量的关系 33
2.4 数组和数组声明 33
2.4.1 数组的概念和作用 33
2.4.2 数组的声明 33
2.4.3 多维数组 34
2.4.4 动态数组 34
2.5 程序结构 35
2.5.1 顺序结构 35
2.5.2 条件结构 36
2.5.3 循环结构 38
2.6 过程与函数 40
2.6.1 过程和函数 40
2.6.2 变量作用域 47
2.7 基本函数 48
2.7.1 类型转换函数 48
2.7.2 字符串函数 48
2.7.3 日期和时间函数 48
2.7.4 数值函数 49
2.7.5 Shell函数 49
第3章 创建第一个Visual Basic应用程序 51
3.1 编写第一个Visual Basic工程 51
3.1.1 创建一个新工程 51
3.1.2 创建新程序的用户界面 52
3.1.3 设置用户界面中各对象的属性 52
3.1.4 编写程序代码 54
3.1.5 保存和运行程序 55
3.1.6 创建可执行文件 56
3.2 Visual Basic工程的结构 56
3.2.1 Visual Basic工程概述 56
3.2.2 工程设计和工程资源 57
3.2.3 运行时文件 58
3.3 配置Visual Basic工程 58
3.3.1 工程属性 58
3.3.2 引用和部件 59
第4章 Visual Basic面向对象的编程基础 64
4.1 属性、方法和事件概述 64
4.1.1 对象 64
4.1.2 属性 65
4.1.3 方法 65
4.1.4 事件 65
4.2 控件及其作用 65
4.2.1 控件概述 66
4.2.2 控件作用 68
4.2.3 控件与对象的关系 68
4.2.4 控件分类 68
4.3 最通用的属性 70
4.3.1 名称属性(Name属性) 70
4.3.2 标题属性和文本属性(Caption和Text属性) 72
4.3.3 是否可用和是否可视(Enabled和Visible属性) 72
4.3.4 确定控件位置(Left、Top、Height和Width属性) 73
4.4 最通用的方法 73
4.4.1 方法概述 73
4.4.2 拖动——Drag方法 74
4.4.3 移动——Move方法 75
4.4.4 确定焦点——SetFocus方法 76
4.4.5 设置控件的Z顺序——ZOrder方法 77
4.5 事件驱动机制 78
4.5.1 理解事件驱动 78
4.5.2 在控件中使用事件 78
4.5.3 理解事件的先后次序 79
4.6 最通用的事件 79
4.6.1 单击事件——Click事件 79
4.6.2 拖放事件——DragDrop事件 80
4.6.3 拖过事件——DragOver事件 81
4.6.4 取得焦点的事件——GotFocus事件 81
4.6.5 失去焦点的事件——LostFocus事件 81
第5章 面向对象编程 83
5.1 深入了解面向对象编程 83
5.1.1 面向对象编程概述 83
5.1.2 Visual Basic中的面向对象编程 84
5.2 对象变量和对象引用 87
5.2.1 对象变量及其使用 87
5.2.2 对象变量和对象类型 89
5.3 集合和对象集合 91
5.3.1 集合 91
5.3.2 集合的操作 92
5.3.3 Visual Basic 中的对象集合 95
5.4 通过类模块来创建对象 97
5.4.1 类和类模块 97
5.4.2 类模块的创建 98
5.4.3 向类中添加属性和方法 100
5.4.4 向类中添加事件 104
5.4.5 使用“类生成器” 107
5.5 对象编程示例 110
5.5.1 定制About窗体类 110
5.5.2 自定义学生信息类 114
5.5.3 简易学生信息管理系统ActiveX编程 117
第6章 窗体 122
6.1 窗体概述 122
6.1.1 窗体的基本元素 123
6.1.2 窗体类型 123
6.2 窗体的常用属性 124
6.2.1 窗体标题——Caption属性 124
6.2.2 窗体外表风格——Appearance属性 125
6.2.3 边框样式——BorderStyle属性 125
6.2.4 控制框按钮——ControlBox属性 126
6.2.5 最大化按钮——MaxButton属性 126
6.2.6 最小化按钮——MinButton属性 126
6.2.7 是否可视——Visible属性 127
6.2.8 窗体图标——Icon属性 127
6.2.9 窗口的可视状态——WindowState属性 127
6.3 窗体的常用方法 128
6.3.1 显示窗体——Show方法 128
6.3.2 载入窗体——Load方法 129
6.3.3 隐藏窗体——Hide方法 129
6.4 窗体的常用事件 130
6.4.1 单击事件——Click 130
6.4.2 双击事件——DblClick 130
6.4.3 初始化时间——Initialize事件 131
6.4.4 窗口的Load、Unload/QueryUnload事件 131
6.4.5 窗口活动性——Activate/Deactivate事件 132
6.4.6 绘画事件——Paint事件 133
6.4.7 键盘事件——KeyDown/KeyUp/KeyPress事件 133
6.4.8 鼠标事件——MouseDown/MouseMove/MouseUp事件 137
6.5 设计MDI窗体 138
6.5.1 MDI主窗体和MDI子窗体 138
6.5.2 MDI窗体的基本特征 140
6.5.3 操作子窗体 140
第7章 使用内部控件 143
7.1 命令按钮(CommandButton) 143
7.1.1 命令按钮的常用属性 143
7.1.2 命令按钮的基本事件 144
7.2 文本框控件(TextBox) 146
7.2.1 标准文本框的属性 147
7.2.2 标准文本框的事件 148
7.3 标签控件(Label) 148
7.4 列表类控件 150
7.4.1 标准列表框控件 150
7.4.2 标准组合框 154
7.5 选择类控件 156
7.5.1 复选框 156
7.5.2 单选钮 160
7.6 标准框架控件 163
7.7 滚动条 164
7.7.1 HscrollBar和VScrollBar控件的属性 164
7.7.2 HscrollBar和VScrollBar控件的方法 165
7.7.3 HscrollBar和VScrollBar控件的事件 166
7.7.4 示例 166
7.8 定时控件 168
7.9 其他控件 169
第8章 使用菜单 170
8.1 菜单设计 170
8.1.1 菜单的基本概念 170
8.1.2 菜单编辑器 170
8.1.3 设计菜单 175
8.2 弹出式菜单 178
8.2.1 弹出式菜单概述 178
8.2.2 弹出式菜单的设计 178
8.2.3 弹出式菜单的调用 178
8.3 菜单的编程 179
8.3.1 菜单编程初步 179
8.3.2 运行时改变菜单状态 182
8.3.3 运行时菜单项的增减 182
8.4 菜单设计示例 183
8.4.1 设计弹出式菜单 183
8.4.2 动态菜单的增减 187
8.4.3 设计MDI菜单 190
第9章 使用对话框 197
9.1 输入对话框(InputBox函数) 197
9.2 消息对话框(MsgBox函数) 198
9.3 使用公用对话框 201
9.3.1 【打开】对话框 202
9.3.2 【另存为】对话框 203
9.3.3 【颜色】对话框 203
9.3.4 【字体】对话框 204
9.3.5 【打印】对话框 206
9.3.6 【帮助】对话框 208
第10章 鼠标和键盘处理 209
10.1 鼠标响应事件 209
10.1.1 MouseDown事件 209
10.1.2 MouseUp事件 209
10.1.3 MouseMove事件 210
10.1.4 检测状态 210
10.2 拖放技术 212
10.2.1 启动自动拖动模式 212
10.2.2 改变拖动图标 212
10.2.3 放下对象时的响应 212
10.2.4 启动拖动或停止拖动时的控制 213
10.2.5 改变控件的位置 214
10.3 自定义鼠标指针 215
10.4 处理键盘输入 216
10.4.1 处理KeyPress事件 216
10.4.2 处理KeyUp事件 219
10.4.3 处理KeyDown事件 221
10.4.4 处理KeyPreview属性 224
第11章 文件编程 226
11.1 文件系统概述 226
11.1.1 文件的类型 226
11.1.2 操纵顺序文件 226
11.1.3 操纵随机文件 229
11.1.4 操纵二进制文件 231
11.1.5 “分件分割与合并”示例 232
11.2 文件系统类控件 236
11.2.1 驱动器列表(DriverListBox) 236
11.2.2 目录列表(DirListBox) 237
11.2.3 文件列表(FileListBox) 239
11.3 文件系统对象(FSO) 244
11.3.1 文件系统对象的结构 244
11.3.2 使用文件系统对象 258
11.4 文件操作示例(结合文件系统类控件) 269
第12章 打印控制 274
12.1 相关对象和集合 274
12.1.1 Printer对象 274
12.1.2 Printers集合 277
12.2 在应用程序中打印 277
12.2.1 使用PrintForm方法 277
12.2.2 使用Printer对象 278
12.3 捕捉打印机错误 280
第13章 操作注册表 281
13.1 读写系统注册表 281
13.1.1 注册表读写函数 284
13.1.2 读写注册表示例 288
13.2 保存应用程序状态 289
13.3 保存最近处理的文件列表 297
13.4 将文件类型和应用程序关联 301
第14章 坐标系统 303
14.1 坐标系统概述 303
14.2 常用属性 303
14.2.1 CurrentX属性和CurrentY属性 303
14.2.2 Left和Top属性 303
14.2.3 ScaleLeft和ScaleTop属性 304
14.2.4 Height和Width属性 304
14.2.5 ScaleHeight和ScaleWidth属性 305
14.2.6 ScaleMode属性 305
14.3 常用方法 306
14.3.1 Scale方法 306
14.3.2 ScaleX方法 307
14.3.3 ScaleY方法 308
14.4 坐标转换 308
第15章 图形图像 310
15.1 图形方法 310
15.1.1 图形方法和图形控件的比较 310
15.1.2 画图方法 310
15.1.3 绘图属性 317
15.2 图形图像控件 320
15.2.1 图片框控件(PictureBox) 320
15.2.2 图像控件(Image) 327
15.2.3 Line控件 331
15.2.4 Shape控件 332
15.3 使用颜色 334
15.3.1 颜色属性 335
15.3.2 RGB函数 335
15.3.3 系统颜色 335
15.3.4 使用调色板 335
第16章 多媒体编程 337
16.1 文字处理 337
16.1.1 文字效果 337
16.1.2 “文字特效”示例 351
16.2 声音与视频处理 362
16.2.1 MMControl控件 362
16.2.2 播放MIDI和WAV文件 368
16.2.3 播放AVI文件 371
第17章 数据通信 373
17.1 数据通信概述 373
17.1.1 串口通信 373
17.1.2 并口通信 373
17.1.3 发送顺序 374
17.1.4 RS-232C标准接口 374
17.2 使用MSComm控件 377
17.2.1 MSComm控件基本技术 377
17.2.2 使用MSComm控件测试Modem 381
17.3 操作调制解调器(Modem) 384
17.3.1 测试Modem状态 384
17.3.2 拨号连接 385
17.3.3 结束连接 387
17.3.4 服务器方应答 388
第18章 网络通信 389
18.1 网络基本知识 389
18.1.1 网络分层参考模型 389
18.1.2 网络协议 398
18.1.3 网络接口 399
18.1.4 网络地址 400
18.2 Winsock控件介绍 402
18.2.1 WinSock控件概述 402
18.2.2 建立服务器/客户端的通信 408
18.2.3 建立多点通信 410
18.3 WinSock控件的应用 412
18.3.1 下载HTML网页 413
18.3.2 用UDP协议实现对等通信 414
第19章 Intemet编程 417
19.1 应用层的有关协议 417
19.1.1 HTTP 417
19.1.2 FTP 418
19.2 电子邮件 418
19.2.1 MAPI控件介绍 418
19.2.2 实现电子邮件功能 430
19.3 Internet Transfer控件 432
19.3.1 Intemet Transfer控件基本属性 432
19.3.2 Internet Transfer控件基本方法 434
19.3.3 Internet Transfer控件基本事件 436
19.4 WebBrowser控件 437
19.4.1 引用WebBrowser控件 437
19.4.2 WebBrowser控件常用属性与方法 438
19.4.3 建立基本的浏览器 441
19.4.4 完善简单浏览器 443
第20章 数据库基础 448
20.1 数据库的发展历程 448
20.2 关系型数据库 448
20.2.1 数据模型 448
20.2.2 实体之间的关系 449
20.2.3 关键字 450
20.2.4 规范化设计理念和方法 451
20.2.5 表及表之间的关系 453
20.3 当前流行的几种数据库 454
20.4 如何进行数据库应用程序的开发 455
20.4.1 数据库应用程序的基本开发步骤 455
20.4.2 高效地确定数据库系统开发方案 457
20.4.3 数据库应用程序的原则 458
20.5 用SQL语句查询和操纵数据库 459
20.6 使用ODBC 474
20.6.1 ODBC历史 474
20.6.2 ODBC的整体结构 474
20.6.3 配置ODBC 474
20.6.4 在应用程序中设置ODBC 480
第21章 使用DATA控件操纵数据库 483
21.1 为使用Data控件做好准备 483
21.1.1 引入Data控件到Visual Basic项目 483
21.1.2 Data控件的主要属性、事件和方法 483
21.1.3 认识和了解Recordset(记录集) 488
21.2 Data控件直接操纵数据库 491
21.2.1 连接数据库 491
21.2.2 移动记录 492
21.2.3 增删改记录 493
21.2.4 查找记录 493
21.3 Data控件结合代码操纵数据库 494
21.3.1 移动记录 494
21.3.2 查找记录 495
21.3.3 更新记录 496
21.3.4 关闭记录集 497
第22章 使用ADOData控件操纵数据库 498
22.1 为使用ADOData控件做好准备 498
22.1.1 引入ADOData控件到Visual Basic项目 498
22.1.2 控件的主要属性、事件和方法 499
22.2 ADOData控件直接操纵数据库 501
22.2.1 连接数据库 501
22.2.2 移动记录 504
22.2.3 增、删、改记录 504
22.2.4 查找记录 505
22.3 ADOData控件结合代码操纵数据库 506
22.3.1 连接数据库 506
22.3.2 移动记录 506
22.3.3 增、删、改记录 507
22.3.4 查找记录 508
第23章 显示编辑数据字段的常用技术 509
23.1 字段类型对显示与编辑内容的要求 509
23.2 将字段内容与控件绑定实现自动操作 509
23.2.1 使用文本框控件——TextBox 510
23.2.2 使用日期选择控件——DateTimePicker 510
23.2.3 使用高级约束列表控件——DBList 512
23.2.4 使用高级约束组合框控件——DBCombo 513
23.2.5 使用复选框控件——CheckBox 513
23.2.6 使用列表框控件——ListBox 514
23.2.7 使用组合框控件——ComboBox 514
23.3 用代码操纵数据显示和编辑控件 515
23.3.1 操作文本框控件——TextBox 515
23.3.2 操作日期选择控件——DateTimePicker 515
23.3.3 操作高级约束列表控件——DBList 517
23.3.4 操作高级约束组合框控件——DBCombo 518
23.3.5 操作复选框控件——CheckBox 519
23.3.6 操作列表框控件——ListBox 519
23.3.7 操作组合框控件——ComboBox 520
第24章 用DAO操纵数据库 522
24.1 DAO概念 522
24.2 DAO层次结构 522
24.3 DAO具体对象 523
24.3.1 数据工作空间对象——WorkSpace 523
24.3.2 数据库引擎对象——DBEngine 523
24.3.3 数据库对象——Database 524
24.3.4 数据表对象与字段对象——TableDef、Field 525
24.3.5 数据记录集对象——Recordset 526
24.3.6 数据查询对象——QueryDef 528
24.4 DAO操纵数据库的一般过程 528
24.5 打开与关闭数据库 529
24.5.1 引用数据库引擎动态链接库 529
24.5.2 创建并打开Database对象——打开数据库 529
24.5.3 关闭Database对象——关闭数据库 530
24.6 利用记录集(Recordset)对象操作数据库 530
24.6.1 创建并打开Recordset对象 530
24.6.2 浏览数据记录(定位当前记录) 532
24.6.3 查询数据记录 533
24.6.4 增加数据记录 536
24.6.5 删除数据记录 537
24.6.6 修改数据记录 537
24.7 数据库操作中合理使用TableDef、Field、QueryDef对象 538
24.7.1 利用TableDef进行数据库表操作 538
24.7.2 利用Field进行数据库表字段的操作 539
24.7.3 利用QueryDef进行数据库查询操作 539
第25章 ActiveX数据对象(ADO) 541
25.1 ADO的介绍 541
25.2 ADO的对象 541
25.2.1 数据库连接对象——Connection 541
25.2.2 数据集对象——Recordset 544
25.2.3 命令对象——Command 547
25.2.4 字段对象——Field 548
25.2.5 错误集合——Errors 549
25.3 ADO操纵数据库的一般过程 549
25.4 ADO连接数据库 550
25.4.1 连接到ODBC数据源 550
25.4.2 连接到Access数据文件 550
25.4.3 连接到SQL Server数据源 551
25.4.4 连接到Oracle数据服务 552
25.5 用记录集(Recordset)对象操纵数据 552
25.5.1 创建并打开Recordset对象 552
25.5.2 浏览数据记录(定位当前记录) 553
25.5.3 查询数据记录 553
25.5.4 增、删、改数据记录 553
25.5.5 构造无数据源的数据集 554
25.6 ADO运行无返回值的查询语句 554
25.6.1 用Connection对象运行查询语句 554
25.6.2 用Command对象构造带参数的查询语句 555
第26章 高级数据呈现技术 557
26.1 数据环境(Data Environment) 557
26.1.1 数据环境简介 557
26.1.2 字段映射 557
26.1.3 在应用程序中使用数据环境 557
26.2 网格控件 558
26.2.1 DataGrid控件 558
26.2.2 MSFlexGrid和MSHFlexGrid控件 563
26.2.3 如何使用数据源控件和网格控件 577
26.2.4 如何使用数据环境和网格控件 579
26.3 数据报表(Data Reporter) 579
26.3.1 设计报表数据环境 579
26.3.2 使用数据报表设计器 581
26.3.3 丰富数据报表功能 584
26.3.4 打印数据报表 587
26.3.5 数据报表的事件处理 587
26.4 数据图表(Chart) 589
26.4.1 MSChart控件的基本用法与示例 590
26.4.2 设置图表的数据源 592
26.4.3 图表的外观属性 596
26.4.4 图表的打印 598
第27章 数据库的特殊处理 602
27.1 存取数据库中特殊数据 602
27.1.1 图片的存取 602
27.1.2 超长数据库字段的操纵方法 605
27.2 访问其他数据库 610
27.2.1 访问Excel数据 610
27.2.2 访问FoxPro数据 613
27.3 数据有效性监测 615
27.3.1 数据类型监测 615
27.3.2 数据范围监测 615
27.3.3 空字段读取监测 616
27.4 操作加密数据库 616
27.4.1 为数据库设置密码 616
27.4.2 访问加密的数据库 617
27.5 建立计算字段 618
第28章 API编程 621
28.1 API基础 621
28.1.1 API简介 621
28.1.2 API数据类型 621
28.1.3 API函数 624
28.2 在VB中使用API编程 625
28.2.1 Visual Basic的局限性及其克服方法 625
28.2.2 使用API 626
28.2.3 声明API函数 626
28.2.4 调用API函数 630
第29章 错误处理与程序调试 638
29.1 错误与错误对象 638
29.1.1 VB中的错误 638
29.1.2 错误对象 641
29.2 错误处理 646
29.2.1 错误处理的一般步骤 646
29.2.2 深入错误处理 651
29.2.3 联机错误处理 654
29.2.4 错误处理示例 657
29.3 程序调试 662
29.3.1 概述 662
29.3.2 程序的模式及其切换 664
29.3.3 跟踪代码 665
29.3.4 使用调试窗口 670
第30章 应用程序的优化和发布 677
30.1 优化应用程序 677
30.1.1 应用程序的优化 677
30.1.2 优化速度 681
30.1.3 优化大小 685
30.1.4 优化对象 690
30.2 发布应用程序 691
30.2.1 发布应用程序的工具 691
30.2.2 为应用程序打包 694
30.2.3 展开应用程序 698
30.2.4 管理向导脚本 699
30.2.5 示例 699
第31章 制作帮助文件 709
31.1 添加对帮助的支持 709
31.2 制作帮助文件 709
31.2.1 制作帮助源文件 709
31.2.2 对源文件进行编译,生成HLP文件 710
31.2.3 帮助文件的应用 714
31.3 WinHelp函数 716
31.4 使用上下文相关帮助 716
- 《钒产业技术及应用》高峰,彭清静,华骏主编 2019
- 《现代水泥技术发展与应用论文集》天津水泥工业设计研究院有限公司编 2019
- 《异质性条件下技术创新最优市场结构研究 以中国高技术产业为例》千慧雄 2019
- 《Prometheus技术秘笈》百里燊 2019
- 《中央财政支持提升专业服务产业发展能力项目水利工程专业课程建设成果 设施农业工程技术》赵英编 2018
- 《指向核心素养 北京十一学校名师教学设计 英语 七年级 上 配人教版》周志英总主编 2019
- 《药剂学实验操作技术》刘芳,高森主编 2019
- 《林下养蜂技术》罗文华,黄勇,刘佳霖主编 2017
- 《脱硝运行技术1000问》朱国宇编 2019
- 《催化剂制备过程技术》韩勇责任编辑;(中国)张继光 2019
- 《市政工程基础》杨岚编著 2009
- 《家畜百宝 猪、牛、羊、鸡的综合利用》山西省商业厅组织技术处编著 1959
- 《《道德经》200句》崇贤书院编著 2018
- 《高级英语阅读与听说教程》刘秀梅编著 2019
- 《计算机网络与通信基础》谢雨飞,田启川编著 2019
- 《看图自学吉他弹唱教程》陈飞编著 2019
- 《法语词汇认知联想记忆法》刘莲编著 2020
- 《HTML5从入门到精通 第3版》(中国)明日科技 2019
- 《培智学校义务教育实验教科书教师教学用书 生活适应 二年级 上》人民教育出版社,课程教材研究所,特殊教育课程教材研究中心编著 2019
- 《国家社科基金项目申报规范 技巧与案例 第3版 2020》文传浩,夏宇编著 2019
- 《指向核心素养 北京十一学校名师教学设计 英语 七年级 上 配人教版》周志英总主编 2019
- 《办好人民满意的教育 全国教育满意度调查报告》(中国)中国教育科学研究院 2019
- 《北京生态环境保护》《北京环境保护丛书》编委会编著 2018
- 《人民院士》吴娜著 2019
- 《指向核心素养 北京十一学校名师教学设计 英语 九年级 上 配人教版》周志英总主编 2019
- 《中国人民的心》杨朔著;夕琳编 2019
- 《高等院校旅游专业系列教材 旅游企业岗位培训系列教材 新编北京导游英语》杨昆,鄢莉,谭明华 2019
- 《中华人民共和国成立70周年优秀文学作品精选 短篇小说卷 上 全2册》贺邵俊主编 2019
- 《指向核心素养 北京十一学校名师教学设计 数学 九年级 上 配人教版》周志英总主编 2019
- 《中华人民共和国成立70周年优秀文学作品精选 中篇小说卷 下 全3册》洪治纲主编 2019