配色: 字号:
8762 可视化程序设计.doc
2020-07-10 | 阅:  转:  |  分享 
  
可视化程序设计(VC)(8013)自学考试大纲

一、课程的性质及其设置目的

1、课程的性质、地位与任务

可视化程序设计(VC)是一门使用VisualC++6.0语言和工具训练学生从事计算机可视化程序设计的课程。本课程是计算机及应用专业(独立本科段)的专业选修课程之一。通过本课程的学习,使考生了解和掌握VisualC++6.0语言的基本功能,掌握VisualC++6.0环境中的各种基本工具。学会使用VisualC++6.0语言和工具设计并实现各种基本用户界面(如菜单、状态栏和工具栏、对话框、但文档与多文档界面),能熟练处理Windows系统中的各种基本事件,并能打印和存储各种类型的数据,绘制各种功能图形。初步掌握Windows系统中复杂事件任务(如多线程等)的设计与实现。

2、基本要求

本课程的考试对应考者进行以下水平测试:

(1)对VisualC++6.0开发环境中语言(包括MFC)和开发工具基本概念的识记、理解能力;

(2)对VisualC++6.0开发环境的使用能力;

(3)对C++6.0语言的应用与表示方法的掌握水平;

(4)对事件驱动环境下的程序设计的掌握水平;

(5)对可视化系统的设计与实现的掌握水平;

(6)对基本二维图形系统设计与实现的的掌握水平;

(7)对Windows系统中多线程设计与应用的掌握水平;

(8)对MFC库的重要结构和文档与视框架结构的四大对象的理解与应用水平;

(9)利用所学知识进行综合程序设计的能力。

3、与相关课程的联系

本课程要求考生具备基本的计算机专业基础知识和上机实践经验。先修课程为:高级语言程序设计(C语言)、面向对象的程序设计(C++6.0)、计算机操作系统原理、计算机组成原理等。

二、课程内容和考核目标

第一章绪论

本章介绍了VisualC++6.0的集成开发环境。本章通过对VisualC++6.0的集成开发环境中个功能单元的介绍,阐述了各种Windows资源的创建与编辑,并重点介绍了事件映射原理和ClassWizard工具的使用方法。本章对在VisualC++6.0的集成开发环境中如何使用调试技术及各种调试手段的使用和表现方法作了较详细的介绍。问题、数学模型、算法与程序之间的关系。

1、知识点

(1)基本概念:加速键、对话框、项目、资源、工具栏、菜单、图标ApplicationWizardClassWizard、Cursor、字符串表、SourceSymbol、调试、ID、消息映射、消息响应、断点等。

(2)VisualC++6.0的外观认识。

(3)ApplicationWizard理解和使用。

(4)项目、文件与程序的执行。

(5)资源的理解和资源编辑器的使用(菜单、对话框、工具栏、鼠标指针、图标、快捷键、字符串表等)。

(6)ClassWizard的理解与使用(消息与消息映射)。

(7)调试与调试功能的使用(程序变量窗口、监视窗口、函数调用堆栈、内存窗口、寄存器窗口、Disassembly窗口、断点设置、单步执行、TRACE宏、ASSERT宏、DataTips弹出消息)。

(8)在线帮助。

2、自学要求

熟悉VisualC++6.0的外观。

掌握ApplicationWizard的使用。

理解项目和各种类型的文件。

掌握资源编辑器的使用。

理解消息与消息映射,学会使用ClassWizard。

理解调试技术,学会使用调试功能。

学会使用在线帮助。

3、考核目标

识记有关VisualC++6.0开发环境的各种基本概念、基本使用方法。

理解ApplicationWizard。

理解VisualC++6.0中的各种资源,并能熟练的使用资源编辑器。

理解消息与消息映射,并能熟练的使用ClassWizard。

理解调试与调试功能,并能熟练的使用VisualC++6.0所提供的各种调试手段。

第二章C++6.0语言复习

本章简单的复习了C++6.0语言的类、封装与继承、友元函数等基本结构。本章还特别介绍了this关键字、类型转换、虚函数与多态、构造函数与析构函数、内联函数、异常处理、模板技术等。

1、知识点

(1)基本概念:类|、对象、封装、继承、友元、虚函数、虚基类、重载、多态、内联函数、异常、模板、构造函数、析构函数、动态绑定等。

(2)面向对象技术。

(3)类与对象。

(4)继承与封装。

(5)友元。

(6)虚函数、多态与动态连接。

(7)多继承与虚基类。

(8)重载。

(9)构造函数与析构函数。

(10)宏与内联函数

(11)异常处理。

(12)模板。

2、自学要求

掌握类与对象及它们之间的关系。

掌握封装与继承及它们之间的关系。

理解友元函数和友元类及它们与类和对象之间的关系。

掌握this关键字、虚函数和多态性的基本概念及其实现。

理解多重继承与虚基础继承的基本概念及其实现。

掌握函数重载和运算符重载的基本概念及其实现。

掌握构造函数与析构函数的的作用及其实现。

理解内联函数的概念及其实现。

理解异常处理及其实现。

(10)掌握模板及其实现。

3、考核目标

识记有关C++6.0基本概念与术语。

理解类与对象的定义与实现。

应用友元函数和友元类访问类和对象的私有数据。

应用构造函数与析构函数进行数据的初始化和销毁。

应用多重继承与虚基础继承对不同数据类型融合。

函数重载和运算符重载简化数据的表示。

选择模板表示具体问题的求解。

利用C++6.0进行综合程序设计的能力。

第三章MFCApplicationWizard

本章以ExTrace实例为例介绍了如何利用ApplicationWizard建立ExTrace工程的基本过程,并由此剖析了ExTrace工程中的函数结构和函数的执行顺序。本章重点分析了文档与视结构框架中的四大对象及它们之间的关系,对消息映射机制及其实现也进行了详细的讨论。

1、考核知识点

(1)基本概念:框架函数、Onidle函数、InitInstance函数、Run函数、文档模板DECLARE_DYNCREATE、IMPLEMENT_DYNCREATE、DECLARE_SERIALIMPLEMENT_SERIAL、运行时类、消息映射等。

(2)Windows程序的结构与程序的进入点。

(3)ExTrace工程的创建。

(4)ExTrace工程的函数结构及函数的执行顺序。

(5)文档与视结构与文档模板。

(6)消息映射机制。

2、自学要求

熟悉Windows结构与Windows程序设计的基本过程与基本结构。

熟悉文档与视结构中的各种概念和基本框架。

熟悉ApplicationWizard的基本思想和基本结构,并能熟练使用它。

熟悉ExTrace工程的函数结构,了解其函数的执行过程。

掌握文档模板结构,了解各种宏的定义。

掌握文档与视框架中的四大对象及它们之间的关系。

掌握消息映射机制和消息映射的实现方法。

3、考核目标

识记有文档与视结构关的基本概念与术语

能熟练的使用ApplicationWizard创建工程。

能写出文档模板结构。

能熟练应用文档与视框架中的四大对象及它们之间的关系创建应用程序。

能熟练应用消息映射机制处理基本事件。



第四章菜单

本章介绍windows系统中下拉式菜单和弹出式菜单的设计定义与实现方法,特别通过一个范例详细地描述了这两种菜单设计实现过程。本章还对MFC中的菜单类(CMenu)的结构和关键函数进行了分析。

1、知识点

基本概念:菜单、下拉式菜单、弹出式菜单、系统菜单、窗口外框。

系统菜单与窗口标题。

下拉式菜单。

弹出式菜单。

菜单实例

2、自学要求

熟悉与菜单有关的基本概念。

掌握菜单结构及其编辑方法。

掌握菜单类(CMenu)的结构及其成员函数的功能。

掌握下拉式菜单和弹出式菜单的使用与实现。

熟悉ExMenu范例的设计与实现

3、考核目标

识记菜单的各种基本概念与术语。

能熟练写出菜单结构。

能熟练使用VisualC++6.0的资源编辑器编辑菜单,并能与消息响应函数挂接起来。

能熟练使用弹出式菜单方式处理基本消息。

能熟练使用下拉式菜单方式处理基本消息。

能综合使用菜单进行相应基本消息响应处理一般的事务问题。

第五章状态栏与工具栏

本章介绍了串和数组的逻辑结构和存储结构,特别介绍了串的表示和实现及串的一个应用实例—正文模式匹配与编辑。对数组部分,特别介绍了压缩方法,以及在压缩存储的矩阵上实现基本操作的算法。

1、考核知识点

基本概念:状态栏、工具栏、默认工具栏、模认状态栏、弹出式工具栏、自定工具栏、CStatusBar、CToolBar等。

工具栏与状态栏的类继承层次和类结构。

状态栏的生成与状态栏对象指针的获得。

工具栏的类结构与使用。

实例分析。

2、自学要求

识记状态栏和工具栏的基本概念和术语。

掌握状态栏的定义与使用。

掌握工具栏的结构和使用。

掌握如何使用资源编辑器编辑工具栏。

通过范例掌握状态栏和工具栏的各种应用。

3、考核目标

(1)识记状态栏和工具栏的各种基本概念与术语。

(2)能熟练使用状态栏表示显示相应的数据。

(3)能熟练使用工具栏定义消息响应和数据获取。

(4)能熟练的使用资源编辑器定义工具栏。

(5)能生成默认工具栏和自定义工具栏。

(6)能够熟练的应用范例中所介绍的状态栏和工具栏的各种使用各种方法(状态栏上的时钟、弹出式工具栏、菜单上的工具栏的控制等)。

第六章鼠标、键盘与窗口外框

本章介鼠标、键盘的基本知识,通过对鼠标的动作(如按键与移动)和对鼠标指针表现的分析,引出了鼠标的消息响应和鼠标显示等方法;通过对键盘动作的分析,引出了键盘消息及其响应函数的设计方法。本章同样对窗口外框进行分析,描述了获取窗口外框和客户区大小的方法,并详细介绍了如何对窗口实现动态分割和静态分割的基本过程。最后通过两个实例讨论了动态窗口分割和静态窗口分割的实现过程。

1、考核知识点

基本概念:鼠标、键盘、按钮、Capture、鼠标指针、窗口外框、客户区、动态分割、静态分割等。

鼠标的按钮与移动。

鼠标指针。

键盘。

窗口外框。

客户区。

窗口分割。

静态分割。

动态分割

2、自学要求

熟悉鼠标事件、键盘事件和Capture事件。

掌握鼠标事件、键盘事件和Capture事件的相应过程。

掌握鼠标指针的设计。

掌握窗口外框和客户区大小的获取方法。

掌握对窗口的动态和静态分割方法。

通过范例掌握动态窗口分割和静态窗口分割的各种应用。

3、考核目标

识记有关鼠标和键盘基本概念及其消息表示。

能够使用鼠标和键盘进行交互式数据输入和输出处理。

能熟练使用资源编辑器定义和修改鼠标指针。

能熟练的获取窗口外框和客户区大小。

能熟练的对窗口实施动态和静态分割。

能熟练掌握范例中所介绍的各种有关鼠标、键盘和窗口分割的使用技巧和方法。

第七章对话框

本章介绍了对话框的类继承层次和对话框的设计与实现问题。本章通过对对话框的生成、对话框的数据存取方法和对话框控件的使用的讨论,勾画出对话框的基本设计技术。另外,通过对特殊对话框的介绍、对对话框中色彩的讨论和数据交换与数据更新机制的分析,完全展示出了对话框的应用方法与技术。最后以两个范例的形式讨论了模式对话框和无模式对话框的使用。

1、知识点

基本概念:对话框、模式对话框、无模式对话框、DDX、DDV、特殊对话框、静态框、图像框、编辑框、组合框、列表框、滚动框、滑动框、Spin框、Progress框、单选框、GroupBox、CheckBox、按钮、TreeControlListControl等。

对话框的类继承层次。

对话框的生成。

对话框的数据存取。

对话框控件。

特殊对话框。

对话框与控件颜色

UpdateData与DDX、DDV机制。

模式对话框范例。

无模式对话框范例。

2、自学要求

熟悉对话框的类继承层次。

掌握对话框的生成和数据存取方法。

掌握各种基本的对话框控件的定义与使用及它们之间的数据交换。

掌握构造生成森林的步骤。

掌握对话框的设计、创建与修改方法。

掌握特殊对话框的使用。

了解对话框及其控件的颜色使用。

理解控件与对话框之间的数据交换以及DDX、DDV机制。

理解模式和无模式对话框的区别及其使用。

3、考核目标

识记有关对话框及其控件的基本概念和术语。

能熟练的使用资源编辑器创建、修改对话框和控件。

能熟练掌握各种基本对话框控件的类结构和使用。

能熟练应用特殊对话框解决实际问题。

能创建模式和无模式对话框。

第八章FormView窗口对话框控件的应用

本章通过两个范例介绍了FormView窗口和DialogBased窗口的结构和使用。

1、考核知识点

基本概念:FormView窗口、DialogBased窗口、PropertySheet、PropertyPage、属性页、数据交换等。

CFormView类与FormView窗口的实现。

DialogBased窗口的实现。

2、自学要求

理解CFormView类及其关键成员函数的功能与使用。

理解FormView窗口的特性及其使用方法。

理解DialogBased窗口的特性及其使用方法。

掌握范例ExDialogs和范例ExDlgBased中的制作过程和各种使用技巧。

3、考核目标

识记有关FormView窗口和DialogBased窗口的概念与术语

能够熟练设计并实现FormView窗口。

能够熟练设计并实现DialogBased窗口。

能够熟练掌握范例ExDialogs和范例ExDlgBased中的各种使用技巧。

第九章绘图

本章介绍了MFC的绘图原理,重点分析了GDI类、CDC类的结构、成员函数和使用方法。本章通过对绘图映射模式、灰颜色问题也进行了的讨论。位图的处理方法和客户区的绘图机制也在本章中得到进一步说明。最后,本章通过一个范例,综合的将绘图技术应用到该实例中。

1、考核知识点

基本概念:GDI、CDC、DC、画笔、画刷、位图、映射模式、像素、颜色、调色板、图像、闪烁等。

MFC的绘图原理。

GDI类。

DC类。

CDC类的基本绘图函数。

映射模式。

颜色。

位图。

MFC的客户区绘图机制。

综合应用。

2、自学要求

熟悉MFC的绘图原理。

熟悉GDI和DC的基本概念。

掌握GDI类结构、主要成员函数和使用方法。

掌握DC类结构、主要成员函数和使用方法。

掌握映射模式。

理解颜色的定义、结构和使用。

理解位图的定义、结构和使用。

掌握MFC的客户区绘图机制。

掌握范例ExDraw中的制作过程和各种使用技巧。

3、考核目标

识记有关GDI和DC的各种概念和术语。

能熟练的使用GDI和DC进行Windows绘图。

能在绘图过程中灵活的应用映射模式、颜色和位图解决实际问题。

能够熟练掌握范例ExDraw中的各种使用技巧。

第十章文件读写

本章主要介绍了Windows系统中的用MFC类库进行文件读写的问题。本章通过对StreamI/O的分析引出串行化机制,进而讨论了Collection类结构和MFC程序框架的文件读写功能。最后通过一个范例详细地介绍了有关文件的创建、打开、存储等问题的实现过程。

1、考核知识点

(1)基本概念:文件、StreamI/O、串行化、文件存储格式、文件打开、文件存储等。

(2)StreamI/O功能。

(3)Collection类结构。

(4)MFC程序框架的文件读写功能。

(5)文件操作的综合应用(创建、打开、保存)。

2、自学要求

(1)熟悉StreamI/O的结构和使用。

(2)掌握串行化机制。

(3)理解Collection类的结构和使用。

(4)掌握文件的创建、打开和保存。

3、考核目标

(1)识记MFC类库中有关文件与串行化的各种概念和术语。

(2)理解Collection类的结构并能使用它。

(3)深刻理解串行化机制。

(4)能够熟练掌握使用串行化机制设计文件的操作(包括文件的创建、打开和保存等)。

(5)能够熟练掌握范例中的各种使用技巧。

第十一章打印与预览

本章主要介绍了Windows系统中的用MFC类库进行打印与预览的问题。本章通过对MFC框架进行分析,引出了对打印设置、打印预览和打印的讨论,最后用一个范例,详细的介绍了如何进行打印设置、打印预览和打印的细节。

1、考核知识点

(1)基本概念:打印、打印设置、打印预览等。

(2)MFC框架的打印与打印预览。

(3)打印设置。

(4)打印预览。

(5)打印。

(6)综合应用。

2、自学要求

(1)熟悉打印的基本概念。

(2)熟悉MFC框架的打印与打印预览功能与要求。

(3)掌握打印设置方法。

(4)掌握打印方法。

(5)掌握打印设置、打印预览和打印的综合应用方法。

3、考核目标

(1)识记有关打印的各种概念和术语。

(2)能够使用MFC框架进行打印设置。

(3)能够使用MFC框架进行打印预览。

(4)能够使用MFC框架进行打印。

(5)能够熟练掌握范例中的各种使用技巧。

第十二章多线程

本章主要介绍了Windows系统中的线程的设计与应用。本章通过对进程和线程的讨论,进一步分析了MFC同步类的结构和使用和线程的控制问题。最后,本章引入两个范例,详细的描述了线程的使用细节和因注意的问题。

1、考核知识点

(1)基本概念:进程、线程、数据同步、线程同步、线程的生成、线程的结束、线程的暂停、线程的继续、COM等。

(2)进程与多线程。

(3)线程的控制。

(4)MFC的同步类。

(5)线程的综合应用。

2、自学要求

(1)熟悉线程的各种基本概念。

(2)熟悉进程与线程的特点和它们的不同点。

(3)掌握线程的控制。

(4)理解MFC的同步类。

(5)掌握范例中线程的综合应用。

3、考核目标

(1)识记MFC类库中有关文件与串行化的各种概念和术语。

(2)能够熟练描述线程的结构和它的特性。

(3)深刻理解线程的控制的原理。

(4)能够熟练掌握应用MFC的同步类对多线程实行控制。

(5)能够熟练掌握范例中的各种使用技巧。

三、有关说明与实施要求

1、自学教材和参考资料

自学教材:

(1)《掌握VisualC++6.0—MFC程序设计与剖析》胡哲源编著清华大学出版社

参考书:

(1)《深入浅出MFC(第2版)》侯俊杰著华中科技大学出版社

(2)《MFCWindows程序设计》JeffProsise著清华大学出版社

(3)《VisualC++6.0技术内幕(第五版)》DavidJ.Kruglinski著清华大学出版社

(4)《Windows程序设计(第5版)》CharlesPetzold著北京大学出版社

2、考试方式

闭卷、笔试,时间为150分钟。

3、题型结构

(1)填空题(4)双项选择题

(2)简答题(5)程序阅读题

(3)单项选择题(6)编写程序题

(7)算法设计题

4、难度结构

本课程考试主要测试考生对数据结构的基本概念、基本原理和基本算法的理解、掌握程度以及运用这些基础知识分析问题和进行简单程序设计的能力。其中较易的占领30%,中等难度的占领30%,较难的占25%,难的占15%。

5、计分方法

采用百分制,60分为合格。

6、实践性环节考核

本课程实践性环节占1学分。通过上机实践,考核考生对基本原理、基本算法的掌握和运用程度。上机内容包括:线性表、栈、队列和数组的表示及基本操作算法的设计与实现;树与图的表示及周游算法和其它算法的设计与实现;基本排序算法的设计与实现;基本搜索技术的设计与实现以及文件的使用。

要求考生完成6个上机实习题和两份规范的上机实习报告,并参加上机实习考核。

四、题型举例

(1)填空题

例虚基类以关键字来修饰,使用虚基类的目的是为了。

(2)简答题

例什么是图标?

(3)单项选择题

例使用GetWindowDC()和GetDC获取设备上下文在退出时,必须调用()释放设备上下文。

(a)ReleaseDC()

(b)delete()

(c)DeleteDC()

(d)Detach()

(4)多项选择题

例在约束映射模式中,每一个逻辑单位都转换为预先定义好的物理单位,X轴向()为正,Y轴向()为正。

(a) 左

(b) 上

(c) 右

(d) 下

(e)中

(5)程序阅读题

例试填写下列交互绘图程序段中空格a、bc

voidCprogramView::OnMouseMove(UNITnFlag,Cpointpoint)

{

if(!m_bIsDraw)return;

(a);

dc.(b);

CRectrectOld(m_cpStart,m_cpOld);

CRectrectNew(m_cpStart,point);

Switch(m_nDrawType)

{

case0:

dc.SetROP2(R2_WHITE);

dc.Rectangle(point.x-10,point.y-10,point.x+10,point.y+10);

break;

case1:

if(nFlag==MKLBUTTON)

{

dc.MoveTo(m_cpStart);

dc.LineTo(m_cpOld);

m_cpStart=m_cpOld;

}

break;

case2:

dc.MoveTo(m_cpStart);

dc.LineTo(m_cpOld);

dc.MoveTo(m_cpStart);

dc.LineTo(point);

break;

case3:

dc.Rectangle(rectOld);

dc.Rectangle(rectNew);

break;

case4:

dc.Ellipse(rectOld);

dc.Ellipse(rectNew);

break;

case5:

dc.Arc(rectOld,m_cpStart,m_cpOld);

dc.Arc(rectNew,cpStart,point);

break;

}

(c);

Cview::OnMouseMove(nFlag,point);

}



(6)编程题

例设计一个程序,展示各种绘图模式下的不同,用菜单命令来切换不同映射模式,并在不同模式下绘制一个相同的圆形或矩形,看看他们在不同映射模式下的形状变化。

(7)算法设计题

例设计一个微型的二维交互绘图系统。要求:给出系统设计、资源定义、消息定义与映射说明、主要流程说明和主要算法说明。

五、实验及实习要求

1、课程设置的目的和意义

可视化程序设计(VC)是计算机专业本科学生的一门专业选修课。通过这门课程的学习,可以使学生掌握基于Windows系统可视化应用的程序设计,理解在事件驱动环境下的多任务程序设计技术。通过对应用实际问题的求解过程,培养学生对问题分析、表示和实现的能力,为独立从事项目开发与设计奠定坚实的理论基础。

本课程在本科生阶段的计算机专业课处于一个与实际结合紧密的课程。本课程的前导课程为计算机程序设计基础、面向对象的程序设计基础、计算机操作系统、计算机组成原理。学习完本课程后,学生应当能够独立应用VisualC++6.0语言和工具对实际问题进行分析、表示并求解,设计具有一定规模的程序。

学生通过自己动手编制VisualC++6.0程序并实现,然后形成分析结果,可以使学生充分认识到课堂上所讲授的各种方法的涵义,体会到各种方法的优缺点,并进一步掌握如何在Windows系统下从事多任务环境下的事件驱动式的程序设计。

2、应达到的基本要求

学生在进行完本实验课的教学后,应该能够使用VisualC++6.0语言和环境对常见问题求解,并能进行界面设计与实现。能够设计比较复杂问题的算法,并可以根据算法编制、调试运行相应的程序。能够进行二维图形的程序设计,并可以对算法的复杂度进行估计与证明,能够编写、组织测试数据,根据实验结果作出算法的性能分布图,并对实验结果进行评价。

3、教学文件及教学形式

教学文件:VisualC++6.0教科书。实验报告学生自拟。

实验环境:本实验可选用的高级语言为VisualC++6.06.0。实验用机的硬件配置,软件环境自定。

4、实验成绩评定

每次实验的成绩按照5分制评分,实验课的总成绩将按一定比例结合到课程总成绩中。

5、实验报告基本格式

实验目的:同教材

实验要求:同教材

上机环境:硬件配置与软件环境(包括操作系统、编译器等)。

完成时间:使用多少个小时来完成本题目。

程序说明:使用文字和/或框图说明程序的基本结构

程序清单:

测试数据与测试结果:

思考题:

感想与建议:

6、学时分配

本实验课的适用专业为计算机科学与技术。

本实验课程学时为18学时,学时分配如下:

实验1MFCApplicationWizard工具的使用(学时:3)

实验2常规界面和事件的设计与实现(学时:3)

实验3对话框的设计与实现(学时:3)

实验4二维图形程序的设计与实现(学时:3)

实验5文件读写与打印的设计与实现(学时:3)

实验6多线程程序的设计与实现(学时:3)

实验一MFCApplicationWizard工具的使用

1、实验目的

理解MFCApplicationWizard;

掌握VisualC++6.0环境中工程的作用与使用;

熟练掌握MFCApplicationWizard的使用;

熟练掌握资源编辑器的使用。

2、实验要求:按要求编写实验程序,将实验程序上机调试运行,给出输出的结果,并提交实验报告,写出调试运行程序的分析和体会。

3、实验内容:

1)编辑若干类型的资源(菜单、图标、字符串表等)。

2)生成MFCWizard型工程。

3)分析修所生成工程的相关文件。

实验二常规界面和事件的设计与实现

1、实验目的

理解事件与事件驱动原理,并能实现它;

掌握菜单、状态栏和工具栏的编辑与实现;

能够编写具有菜单、状态栏和工具栏的基本窗口程序。

2、实验要求:按要求编写实验程序,将实验程序上机调试运行,给出输出的结果,并提交实验报告,写出调试运行程序的分析和体会。

实验内容

1)分析并修改范例程序。

2)分析菜单、状态栏和工具栏类结构,并能够使用其关键成员函数。

3)使用资源编辑器编辑菜单和工具栏。

4)编制程序显示带有菜单工具栏和状态栏的窗口,并能够驱动状态栏的显示和菜单与工具栏的消息响应。

实验三对话框的设计与实现

1、实验目的

掌握对话框的结构和使用原理;

掌握对话框控件的结构和使用原理;

掌握对话框和对话框控件之间的数据交换原理及其实现;

能够熟练的编制有关对话框的应用程序;

2、实验要求:按要求编写实验程序,将实验程序上机调试运行,给出输出的结果,并提交实验报告,写出调试运行程序的分析和体会。

3、实验内容

1)分析并修改范例程序。

2)使用资源编辑器编辑对话框。

3)编制一个具有多种控件的对话框程序,并能够完成对话框与控件之间的数据交换。

实验四二维图形程序的设计与实现

1、实验目的

理解GDI和CDC结构及其关键成员函数;

理解颜色、位图、坐标映射等多种绘图元素;

能够设计并实现具有二维交互绘图功能的程序。

2、实验要求:按要求编写实验程序,将实验程序上机调试运行,给出输出的结果,并提交实验报告,写出调试运行程序的分析和体会。

3、实验内容

1.分析并修改范例程序。

2.设计并实现一个具有二维交互绘图功能的程序。

实验五文件读写与打印的设计与实现

1、实验目的

理解串行化文件的读写和打印原理;

掌握串行化方式的文件操作(新建、读和写操作)的设计与实现;

掌握文打印设置、打印预览和打印的设计与实现。

2、实验要求:按要求编写实验程序,将实验程序上机调试运行,给出输出的结果,并提交实验报告,写出调试运行程序的分析和体会。

3、实验内容

编程序完成串行化方式的文件操作(新建、读和写操作)和文打印设置、打印预览和打印等功能。

实验六多线程程序的设计与实现

1、实验目的

理解多线程程序设计的原理和关键技术;

掌握多线程程序设计的方法。

2、实验要求:按要求编写实验程序,将实验程序上机调试运行,给出输出的结果,并提交实验报告,写出调试运行程序的分析和体会。

3、实验内容:

1)分析并修改范例程序。

2)设计一个带有优先级的多线程程序完成串口与时钟功能。

1





-13-























献花(0)
+1
(本文系mc_eastian首藏)