计算机基础课程系列教材
2013-1
机械工业出版社
郑阿奇 主编
340
《visual c++ .net程序设计教程(第2版)》以visual c++
.net为平台介绍程序设计方法。第一部分为教程,首先介绍visual c++
.net开发环境,然后介绍c++/cli语言基础和c++/cli面向对象编程基础,在这个基础上系统介绍visual c++
.net应用程序设计(包括windows窗体和对话框、窗体常用控件、基本界面元素、文档界面模型、gdi+和图像处理、文件和流及数据库)。第二部分为实验,并在最后给出一个综合应用实验。为了方便教学,本书配有ppt和配套的应用程序实例。阅读本书,认真完成实验,读者就能在较短的时间内基本掌握visual
c++ .net及其应用技术。
《visual c++ .net程序设计教程(第2版)》可作为高等学校计算机及相关专业程序设计课程的教材,也可供visual
c++ .net软件开发人员参考。
前言
第一部分 教程
第1章 visual c++ .net开发环境
1.1 安装和设置
1.1.1 visual studio 2008安装
1.1.2 默认环境设置
1.1.3 重置默认环境
1.2 认识开发环境
1.2.1 开发环境简介
1.2.2 窗口操作
1.2.3 初试form项目
1.3 解决方案和资源管理
1.3.1 项目和解决方案概念
1.3.2 解决方案资源管理器
1.3.3 类视图
1.3.4 属性管理器
1.4 使用代码编辑器
1.4.1 字体和颜色
1.4.2 选择和更改代码
1.4.3 代码大纲
1.4.4 书签和代码定位
习题
第2章 c++/cli编程基础
2.1 c++/cli框架
2.1.1 c++/cli概述
2.1.2 创建控制台程序
2.1.3 理解程序框架
2.1.4 修改并添加代码
2.1.5 生成和运行
2.2 数据及其类型
2.2.1 变量
2.2.2 基本值类型
2.2.3 基本引用类型
2.2.4 常量
2.3 运算符
2.3.1 算术运算符
2.3.2 赋值运算符
2.3.3 关系运算符
2.3.4 逻辑运算符
2.3.5 位运算符
2.3.6 条件和逗号运算符
2.4 基本语句
2.4.1 表达式语句、空语句和块语句
2.4.2 if和switch语句
2.4.3 while和do-while循环
2.4.4 for循环
2.4.5 for each循环
2.4.6 break语句
2.4.7 continue语句
2.5 函数
2.5.1 函数的定义
2.5.2 函数的调用和声明
2.5.3 全局变量和局部变量
2.5.4 函数的默认形参值
2.5.5 函数重载
习题
第3章 c++/cli编程进阶
3.1 跟踪句柄和引用
3.1.1 跟踪句柄和^
3.1.2 跟踪引用和%
3.2 c++/cli枚举
3.2.1 枚举定义
3.2.2 枚举常量的类型和值
3.2.3 枚举常量的运算
3.3 c++/cli数组
3.3.1 clr数组
3.3.2 数组的排序及查找
3.3.3 多维数组
3.3.4 数组的数组
3.4 c++/cli字符串
3.4.1 连接字符串
3.4.2 修改字符串
3.4.3 比较字符串
3.4.4 搜索字符串
3.4.5 子串和拆分
3.4.6 函数和main实参
3.5 控制台输入输出及格式
3.5.1 控制台输入
3.5.2 write和writeline
3.5.3 格式项
3.5.4 自定义格式和tostring
习题
第4章 c++/cli面向对象编程
4.1 c++/cli面向对象概述
4.1.1 c++/cli类
4.1.2 数值类和对象
4.1.3 引用类和对象
4.1.4 类、程序集和命名空间
4.2 类成员
4.2.1 属性
4.2.2 literal和initonly字段
4.2.3 拷贝和静态构造函数
4.2.4 终结器
4.3 继承和多态
4.3.1 派生类
4.3.2 虚函数
4.3.3 new和虚函数重置
4.3.4 抽象和密封函数
4.3.5 运算符重载
4.4 接口、委托和事件
4.4.1 接口和接口类
4.4.2 委托
4.4.3 事件及其处理
4.5 类型转换和异常处理
4.5.1 类型转换
4.5.2 try和catch
4.5.3 异常类
4.5.4 使用throw
4.5.5 使用finally块
习题
第5章 windows窗体和对话框
5.1 创建窗体应用程序
5.1.1 forms命名空间和类
5.1.2 使用项目模板
5.1.3 窗体程序结构
5.2 窗体属性及设置
5.2.1 form类
5.2.2 外观属性
5.2.3 布局属性
5.2.4 窗口样式属性
5.2.5 属性设置
5.3 窗体事件及处理
5.3.1 窗体常用事件
5.3.2 鼠标事件
5.3.3 键盘事件
5.4 窗体添加和使用
5.4.1 向窗体添加控件
5.4.2 控件拾取和操作
5.4.3 更改控件的tab键顺序
5.4.4 向项目添加窗体
5.4.5 模式和无模式显示
5.5 对话框
5.5.1 自定义对话框
5.5.2 通用对话框
5.5.3 消息对话框
习题
第6章 窗体常用控件
6.1 控件概述
6.1.1 控件的添加和移除
6.1.2 控件的外观属性
6.1.3 控件的布局属性
6.1.4 控件的事件及其处理
6.2 标签和组框
6.2.1 标签(label)
6.2.2 链接标签(linklabel)
6.2.3 组框(groupbox)
6.3 按钮、单选按钮和复选框
6.3.1 按钮(button)
6.3.2 单选按钮(radiobutton)
6.3.3 复选框(checkbox)
6.3.4 实例:制作问卷调查
6.4 文本框和数字旋转控件
6.4.1 文本框(textbox)属性
6.4.2 文本框事件和基本操作
6.4.3 数字旋转控件(numericupdown)
6.4.4 实例:学生成绩输入
6.5 列表框
6.5.1 列表框(listbox)的属性
6.5.2 列表框事件和基本操作
6.5.3 实例:使用列表框
6.6 组合框
6.6.1 组合框(combobox)属性
6.6.2 组合框事件和基本操作
6.6.3 示例:使用组合框
6.7 图片框和进展条
6.7.1 图片框(picturebox)
6.7.2 进展条(progressbar)
6.7.3 实例:使用进展条
6.8 滚动条和滑动条
6.8.1 滚动条(scrollbar)
6.8.2 滑动条(trackbar)
6.8.3 实例:调整窗体背景颜色
6.9 日期时间控件、月历控件和计时器
6.9.1 日期时间控件(datetimepicker)
6.9.2 月历控件(monthcalendar)
6.9.3 实例:使用日期时间和月历控件
6.9.4 计时器(timer)
6.9.5 实例:小游戏
习题
第7章 基本界面元素
7.1 图标和光标
7.1.1 图像编辑器
7.1.2 图标编辑和使用
7.1.3 光标及其编程控制
7.2 菜单
7.2.1 menustrip和事件
7.2.2 编辑菜单
7.2.3 实例:菜单切换
7.2.4 菜单的编程控制
7.2.5 使用快捷菜单
7.3 工具栏
7.3.1 toolstrip和事件
7.3.2 编辑工具栏
7.3.3 工具条资源和图像列表
7.3.4 实例:使用多个工具栏
7.4 状态栏
7.4.1 statusstrip类
7.4.2 编辑状态栏
7.4.3 实例:显示特殊键状态
习题
第8章 文档界面模型
8.1 列表视图
8.1.1 listview属性和事件
8.1.2 列表项操作
8.1.3 列标头操作
8.1.4 列表界面元素与类的关系
8.1.5 实例:学生成绩列表
8.2 树视图
8.2.1 treeview属性和事件
8.2.2 树视图的节点操作
8.2.3 实例:学生成绩树
8.3 选项卡和切分窗口
8.3.1 面板panel
8.3.2 选项卡tabcontrol
8.3.3 切分窗口splitcontainer
8.4 多文档界面
8.4.1 mdi及其创建
8.4.2 合并菜单项
8.4.3 管理子窗体
习题
第 9 章 gdi+和图像处理
9.1 gdi+概述
9.1.1 gdi+新特性及功能
9.1.2 gdi+类和结构
9.1.3 常用基本数据结构
9.2 绘图基础
9.2.1 使用gdi+的一般方法
9.2.2 颜色和颜色对话框
9.2.3 画笔
9.2.4 画刷
9.2.5 基本绘图方法
9.2.6 坐标空间及其变换
9.3 文本绘制
9.3.1 字体及字体对话框
9.3.2 文本输出和显示质量
9.3.3 文本格式化属性
9.3.4 计算字符和文本尺寸
9.4 图像处理
9.4.1 图像格式和image类
9.4.2 调用和显示图像
9.4.3 图像旋转和拉伸
9.4.4 插补和格式转换
9.4.5 实例:简单图像处理
习题
第10章 文件和流
10.1 文件及其操作
10.1.1 i/o类概述
10.1.2 目录操作(directory类)
10.1.3 文件操作(file类)
10.1.4 实例:简单的文件浏览器
10.2 文本操作
10.2.1 文件流(filestream)
10.2.2 文本流
10.2.3 实例:简单的记事本
10.3 字节流和数据串行化
10.3.1 字节读写
10.3.2 数据序列化
10.3.3 实例:学生成绩序列化
习题
第11章 数据库
11.1 概述
11.1.1 关系数据库模型
11.1.2 结构化查询语言(sql)
11.1.3 数据访问命名空间
11.1.4 ado.net结构
11.2 ado.net数据提供程序
11.2.1 创建数据库连接
11.2.2 数据库操作(command)
11.2.3 datareader对象
11.2.4 实例:数据库浏览器
11.3 ado.net dataset使用框架
11.3.1 dataset类
11.3.2 dataadapter类
11.3.3 实例:简单的数据库浏览器
11.4 ado.net dataset数据操作
11.4.1 添加数据连接
11.4.2 使用数据访问控件
11.4.3 创建非类型化dataset
11.4.4 查询结果集
11.4.5 实例:成绩表的更新操作
11.5 datatable操作和数据绑定
11.5.1 datatable类
11.5.2 列操作(datacolumn)
11.5.3 行操作(datarow)
11.5.4 数据绑定
11.5.5 实例:学生信息的简单管理
习题
第二部分 实 验
实验1 熟悉开发环境和建立控制台项目
实验2 基本数据类型、表达式和基本语句
实验3 数组和格式输入输出
实验4 c++/cli类和对象
实验5 多态和虚函数、运算符重载
实验6 windows窗体和对话框
实验7 标签和按钮控件
实验8 文本框、列表框和组合框
实验9 其他常用控件
实验10 菜单、工具栏和状态栏
实验11 文档界面模型
实验12 使用gdi+
实验13 文件和流操作
实验14 数据库
实验15 综合应用
附录a 本书约定
附录b 常用键代码
附录c student.mdb数据库表
附录d 程序调试
版权页: 插图: ③在“解决方案资源管理器”页面中,右击“Form1.h”节点,从弹出的快捷菜单中选择“视图设计器”命令,重启窗体设计器。此时,窗体资源模板中显示了相应的网格点。一旦网格显示,添加或移动控件时都将自动定位在网格线上。当然,还可以在窗体的属性窗口中通过修改GridSize、ShowGrid和SnapToGrid来调整网格大小、确定是否显示网格以及是否自动定位在网格线上。 5.4.3 更改控件的Tab键顺序 在Windows窗体应用程序中,当敲击键盘的某个键时,一般只有一个控件或窗口(通常把小的窗体称为窗口)能接收到该键盘消息,接收到这个键盘消息的窗口就称为有“输入焦点”的窗口。对于窗体中的控件(也是一种窗口)来说,具有输入焦点的控件一般会在控件中显示一个不断闪烁的插入符或在控件标题文字周围显示一个虚线框。 在窗体(或对话框)中,Tab键可以按照一定次序依次将输入焦点从一个控件移动到另一个控件,这个次序称为“Tab键顺序”。默认的控件Tab键顺序与添加的控件次序相同。当然,若要更改Tab键顺序,可按下列步骤进行: ①选择“视图”→“Tab键顺序”菜单命令进入窗体的Tab键顺序选择模式,此时在每个控件的左上角出现一个数字,这个数字反映该控件的Tab键顺序,即控件的Tablndex属性值。如图5—10所示。 ②按自己所希望的次序依次用鼠标单击各个控件,新的Tab键顺序即可生成。 ③再次选择“视图”→“Tab键顺序”菜单命令或直接按【Esc】键,退出窗体的Tab键顺序选择模式。 5.4.4 向项目添加窗体 在Windows窗体应用程序或其他项目中添加一个窗体可按下面的示例过程进行。 【例Ex_MultiForm】使用多个窗体 ①创建一个Windows窗体应用程序Ex_MultiForm。在打开的窗体设计器中,单击Form1窗体,在窗体属性窗口中,将Text属性内容修改成“主框架窗口”。 ②选择“项目”→“添加类”菜单命令,在弹出的“添加类”窗口中,选择Visual C++节点下的“CLR”类型,这时在右侧模板列表中显示出该类型的所有类模板,选中“Windows窗体”,在“名称”框中输入窗体类名UserForm,如图5—11所示。 ③单击按钮,系统开始创建UserForm,并回到Visual Studio 2008的主界面,且在文档窗口中自动打开该窗体的设计器。 ④在UserForm窗体的属性窗口中,将默认的窗体标题属性Text的内容“UserForm”修改为“用户窗体”。
《计算机基础课程系列教材:Visual C++.NET程序设计教程(第2版)》可作为高等学校计算机及相关专业程序设计课程的教材,也可供Visual C++.NET软件开发人员参考。