MFC复习题答案

合集下载

mfc面试题

mfc面试题

mfc面试题MFC(Microsoft Foundation Classes)是微软公司开发的一套C++类库,用于进行Windows应用程序的开发。

MFC面试题主要涉及MFC框架的基本概念、使用方法和相关编程技巧。

以下将以问题和答案的形式介绍几个常见的MFC面试题。

问题1:MFC是什么?它的作用是什么?答:MFC全称为Microsoft Foundation Classes,是微软在VisualC++中提供的一组类库。

它的作用是封装了Windows操作系统的API,简化了Windows应用程序的开发过程。

通过使用MFC,开发人员可以更加方便地创建图形界面、响应用户操作和调用系统功能。

问题2:MFC的架构是怎样的?答:MFC的架构可以分为三层:应用程序层、框架层和操作系统层。

应用程序层是开发人员编写的具体应用程序代码,包括窗口类、对话框类、消息处理函数等。

框架层是MFC提供的类库,包括CWinApp、CFrameWnd、CView等类,用于管理应用程序的生命周期、创建主窗口、处理消息等。

操作系统层是Windows操作系统提供的API,MFC通过封装这些API,以提供更高层次的抽象和易用性。

问题3:如何创建一个MFC应用程序?答:创建MFC应用程序的步骤如下:1. 打开Visual Studio,选择创建新项目。

2. 选择Visual C++ -> MFC -> MFC应用程序。

3. 输入项目名称,选择保存位置,点击确定。

4. 在向导中选择应用程序类型(单文档、多文档、对话框等)、界面风格和其他选项。

5. 点击完成,Visual Studio将自动生成一个基本的MFC应用程序框架。

问题4:如何处理MFC中的消息?答:MFC中的消息处理通过消息映射表和消息处理函数完成。

首先,需要在类声明中使用`DECLARE_MESSAGE_MAP()`宏来声明消息映射表。

然后,在类实现中使用`BEGIN_MESSAGE_MAP`和`END_MESSAGE_MAP`宏来定义消息映射表的起止位置。

阶段三MFC题库

阶段三MFC题库

一、单选题 (2)二、多选题 (2)三、填空题 (2)四、判断题 (3)五、简答题 (3)1..动态连接库的两种方式? (3)2.列举几种进程的同步机制,并比较其优缺点。

(3)3.进程之间通信的途径 (3)4. ASSERT()是干什么用的 (3)5.winsock建立连接的主要实现步骤? (4)6.MFC中CString是类型安全类么? (4)7.进程和线程的差别。

(4)8.请简述PeekMessage和GetMessage的区别。

(4)9.请列出你所知道的在Windows SDK平台上,实现计时功能的方法。

(5)10.程序什么时候应该使用线程,什么时候单线程效率高。

(5)11.使用线程是如何防止出现大的波峰。

(5)12.TCP/IP建立连接的过程?(3-way shake) (5)13.IP组播有那些好处? (5)14. CArray,CList,CMap分别是什么,他们的优缺点 (6)15.用什么函数开启新进程、线程。

(6)16.SendMessage和PostMessage有什么区别 (6)17.CMemoryState主要功能是什么 (6)18.windows消息系统由哪几部分构成? (7)19.什么是消息映射? (7)20.什么是UDP和TCP的区别是什么? (7)21.构成Win32 API 函数的三个动态链接库是什么? (7)22.创建一个窗口的步骤是? (7)23.模态对话框和非模态对话框有什么区别? (7)24.从EDIT框中取出数据给关联的变量,已经把关联的变量的数据显示在EDIT框上的函数是什么? (8)25.简单介绍GDI? (8)26.windows消息分为几类?并对各类做简单描述。

(8)27.如何自定义消息? (8)28.简述V isual C++ 、Win32 API和MFC之间的关系? (8)29. MFC中,大部分类是从哪个类继承而来? (8)六、编程分析题 (9)七、编程题 (9)1.写一个socket通讯程序 (9)2.定义一个CMyRect类{w宽度,h高度} 分别用CList。

VC-MFC试题复习题及答案

VC-MFC试题复习题及答案
A、( ) B、( )C、( )
D、( ) E、( )
4、常用的类的成员函数中:⑽A获得一个按钮控件的选中、选择和聚焦状态;⑾D得到一个按钮的选中状态;⑿C设置一个按钮的选中状态。
A、( ) B、( ) C、( )
D、( ) E、( )
5、滚动条类的成员函数规定了滚动条的操作。设置滚动条的范围使用⒀C函数,设置滚动块的位置使用⒁E函数,获取滚动块的当前位置使用⒂F函数。
D、在类体之外定义的函数成员不能操作该类的私有数据成员
10、以下不属于成员函数的是(B)
A、静态成员函数B、友元函数
C、构造函数D、析构函数
11、对于消息队列的描述正确的是(D)
A、在中只有一个消息系统,即系统消息队列。消息队列是一个系统定义的数据结构,用于临时存储消息。
B、系统可从消息队列将信息直接发给窗口。另外,每个正在下运行的应用程序都有自己的消息队列。
《程序设计》试卷1
一、单项选择题(每小题1分,共20分)
1、假定为一个类,则执行“” a[3],*p[2];”语句时,自动调用该类构造函数的次数为(B)
A、2 B、3 C、4 D、5
2、对于类中定义的成员,其隐含访问权限为(B)
A、B、C、D、
3、一个类的友元函数或友元类能够通过成员操作符访问该类的(B)
12、列表框类的成员函数用来向列表框增加列表项,成员函数用来清除列表项所有项目。
13、序列化是指将对象写入永久存储介质或者将对象从永久存储介质中读出的过程。
14、程序中的消息有窗口消息、命令消息和控件通知消息三种类型。
15、中的集合类包括数组、列表(链表)、映射(顺序可变)。
16、在进行绘图时,画刷用于指定图形的填充样式,画笔用ቤተ መጻሕፍቲ ባይዱ指定图形的边框样式。

华为C++MFC面试题(附上个人答案不当之处请指正)

华为C++MFC面试题(附上个人答案不当之处请指正)

华为C++MFC面试题(附上个人答案不当之处请指正) pS:答案是本人随笔所写,可能不全甚至错误!请不要盲目将其作为标准答案,不当之处,请指正,谢谢。

C++/MFC 试题一.填空题 (26 分 )1 . WIN32 平台下, sizeof(short) = __2__ ,sizeof(int) = __4__ , sizeof(long) =__4__ 。

(3 分 ) /// sizeof(char)=1;sizeof(double) = 8;sizeof(float) = 4;2 .请给出如下程序的结果 (2 分 )int a = 3;int b = a << 3; ///00000011左移三位为00011000,即24a = __3__ ,b =__24__ 。

3 .请给出如下程序的结果 (2 分 )int aaa = 0x01;htonl(aaa) = _16^6___ 。

/// 0x01000000十六进制数,转换为十进制为16的6次方,即167772164 .请给出如下程序的结果 (2 分)#define MAX_NUM 100+200int nTemp = MAX_NUM*10;///宏的功能只是简单的字符替换,MAX_NUM*10表示100+200*10,所以用宏要小心则 Temp = __2100__ 。

5 .请给出如下程序的结果 (3 分 )char szTemp[1000] = "";int nLen1 = sizeof(szTemp);int nLen2 = strlen(szTemp);///strlen的计算结果不包含结束符\\\0\strcpy(szTemp, "abc");int nLen3 = sizeof(szTemp);int nLen4 = strlen(szTemp);int nTemp[100];int *pTemp = nTemp;int nLen5 = sizeof(pTemp);///在32位系统中,指针只占4位字节,不管它指向地址的内容有多大!char szResult[200] = "";sprintf(szResult, "%d,%d,%d,%d,d.", nLen1, nLen2, nLen3, nLen4,nLen5);则 szResult = _1000,0,1000,3,04___ 。

MFC习题答案

MFC习题答案

MFC习题答案在回答MFC习题之前,我们先简要介绍一下MFC(Microsoft Foundation Classes)是什么。

MFC是微软基于Windows操作系统的应用程序开发框架。

它提供了一套封装的类和函数,用于开发Windows 应用程序界面。

MFC使用了面向对象的编程思想,让开发者更容易地创建功能丰富、交互性强的Windows应用程序。

以下是一些常见的MFC习题及其答案:1. 什么是MFC?答:MFC是微软提供的一套用于开发Windows应用程序的软件开发工具包,通过封装了一些常用的类和函数,简化了Windows应用程序的开发过程。

2. MFC的特点有哪些?答:MFC具有如下特点:- 提供了一套完整的类和函数库,简化了Windows应用程序的开发。

- 使用了面向对象的编程思想,提供了封装、继承、多态等特性。

- 支持GUI界面的开发,提供了丰富的控件和界面设计工具。

- 高度集成化,与Windows操作系统密切结合。

- 提供了丰富的文档和示例代码。

3. MFC中常用的类有哪些?答:MFC中包含了大量的类,常用的类包括:- CWinApp:应用程序类,代表一个MFC应用程序的实例。

- CWnd:窗口类,代表一个窗口对象。

- CFrameWnd:框架窗口类,提供了窗口的框架结构。

- CView:视图类,负责处理窗口的绘制和交互事件。

- CDocument:文档类,负责管理应用程序的数据。

- CDialog:对话框类,用于创建模态或非模态对话框。

- CButton、CEdit、CListCtrl等:常用的控件类。

4. 如何创建一个MFC应用程序?答:可以通过以下步骤创建一个MFC应用程序:1) 打开Visual Studio开发环境,选择创建一个新的项目。

2) 在项目向导中选择MFC应用程序,填写项目名称和位置。

3) 设置应用程序的属性,如窗口样式、文件关联等。

4) 在资源视图中创建所需的对话框、控件等。

mfc期末考试试题及答案

mfc期末考试试题及答案

mfc期末考试试题及答案# MFC期末考试试题及答案## 一、选择题(每题2分,共20分)1. MFC框架中,哪个类是所有窗口类的基类?A. CObjectB. CViewC. CFrameWndD. CWnd2. 在MFC中,哪个宏用于创建一个对话框资源?A. DECLARE_MESSAGE_MAPB. BEGIN_MESSAGE_MAPC. DDX_CONTROLD. DDX_TEXT3. MFC中,用于处理消息映射的宏是?A. DECLARE_MESSAGE_MAPB. BEGIN_MESSAGE_MAPC. ON_COMMANDD. ON_MESSAGE4. 下列哪个不是MFC中的控件类?A. CButtonB. CComboBoxC. CLabelD. CListBox5. 在MFC中,哪个函数用于绘制窗口的非客户区?A. OnDraw()B. OnEraseBkgnd()C. OnPaint()D. OnNcPaint()6. MFC中,哪个类提供了对数据库的访问?A. CDatabaseB. CRecordsetC. CRecordViewD. CDaoDatabase7. 以下哪个不是MFC中的文档模板?A. CMultiDocTemplateB. CSingleDocTemplateC. CDialogTemplateD. CDocTemplate8. MFC中,哪个类负责管理窗口的生命周期?A. CWinAppB. CDocumentC. CViewD. CFrameWnd9. 在MFC中,哪个宏用于定义消息映射?A. DECLARE_MESSAGE_MAPB. BEGIN_MESSAGE_MAPC. END_MESSAGE_MAPD. IMPLEMENT_MESSAGE_MAP10. MFC中,哪个函数用于响应鼠标点击事件?A. OnLButtonDown()B. OnLButtonUp()C. OnRButtonDown()D. OnMButtonDown()## 二、简答题(每题10分,共30分)1. 简述MFC中CWinApp类的用途和主要功能。

VC-MFC试题复习题及答案

VC-MFC试题复习题及答案

《VC程序设计》试卷1一、单项选择题(每小题1分,共20分)1、假定MyClass为一个类,则执行“” MyClass a[3],*p[2];”语句时,自动调用该类构造函数的次数为( B )A、2B、3C、4D、52、对于类中定义的成员,其隐含访问权限为( B )A、protectedB、privateC、publicD、static3、一个类的友元函数或友元类能够通过成员操作符访问该类的( B )A、私有成员B、所有成员C、公用成员D、保护成员4、下面说法正确的是(A )A、构造函数可以重载,析构函数不能重载。

B、构造函数不能重载,析构函数可以重载。

C、构造函数可以重载,析构函数也可以重载。

D、构造函数和析构函数都不可以重载。

5、下列语句的运行结果为( D )#include <iostream.h>srtuct COMPLEX{int x;int y;} cNum[2]={1,3,2,7};void main(){cout<< cNum[0].y*cNum[1] x<<endl;}A、3B、2C、21D、66、类AB的缺省构造函数和析构函数是( A )A、AB( )和~AB( )B、AB(int)和~AB( )C、AB( )和~AB(delete )D、AB( )和int~AB( )7、在C++中,若对函数未加说明,则函数的隐含类型是( A )A、intB、doubleC、voidD、char8、已知类A是类B的友元,类B是类C的友元,则( D )A、类A一定是类C的友元B、类C一定是类A的友元C、类C的成员函数可以访问类B的对象的任何成员D、类A的成员函数可以访问类B的对象的任何成员9、下列说法中正确的是( B )A、类定义中只能说明函数成员的函数头,不能定义函数体B、类中的函数成员可以在类体中定义,也可以在类体之外定义C、类中的函数成员在类体之外定义时必须要与类声明在同一文件中D、在类体之外定义的函数成员不能操作该类的私有数据成员10、以下不属于成员函数的是( B )A、静态成员函数B、友元函数C、构造函数D、析构函数11、对于消息队列的描述正确的是( D )A、在Windows中只有一个消息系统,即系统消息队列。

MFC考试复习题0

MFC考试复习题0

复习题::局部全局变量的重名问题。

即在局部变量的作用域内,可用“::”对被隐藏的同名全局变量进行访问。

内联函数:消除函数调用时的系统开销,以提高运行速度,合一些小函数,用空间换时间适。

int i和int& ri = i:表示变量ri引用了变量i,这时ri就可看作是i的别名,即它们指向同一个内存单元。

派生类对基类成员的继承关系:基类成员作为派生类成员公有派生私有派生private成员不可直接访问成员不可直接访问成员protected成员protected成员private成员public成员public成员private成员联编的概念与作用:编译时的多态是通过静态联编来实现的。

所谓联编(binding。

亦称束定),就是把函数名与其函数体的程序代码连接(联系)在一起。

静态联编时,系统用实参与形参进行匹配,对于同名的重载函数便根据参数上的差异进行区分,然后进行联编。

从而实现了多态性。

运行时的多态是用动态联编实现的。

动态联编(也称晚联编)是程序运行时才进行的联编。

即当程序调用到某一函数(过程)名时,才去寻找和连接其程序代码,对面向对象程序而言,就是当对象接收到某一消息时,才去寻找和连接相应的方法。

6、可视化开发系统往往集成了一系列系统可用资源和开发工具,主要是指哪些?程序调试工具,包括源程序语法检查、可执行程序修改和运行监视等;可选择并构成具体语句或源程序结构的例程库及Help;资源管理器,包括图形化窗口及组成元素的多种对象的编辑器;应用程序Help和Setup开发工具包;源程序编辑器和编译器;系统函数库和系统函数开发工具。

窗口管理函数实现窗口的创建、移动和修改功能;系统服务函数:实现与操作系统有关的多种功能;图形设备(GDI)函数:实现与设备无关的图形操作功能。

API为应用程序提供Win系统各种特殊函数及数据结构定义;API是Win系统与Win应用程序间的标准程序接口;Win应用程序可以利用上千个标准API函数调用系统功能。

mfc期末考试试题及答案

mfc期末考试试题及答案

mfc期末考试试题及答案MFC期末考试试题一、选择题(每题2分,共20分)1. MFC中的“M”代表什么?A. MicrosoftB. ModelC. MessageD. Module2. 在MFC中,哪个类是所有窗口类的基类?A. CWinAppB. CWndC. CFrameWndD. CDocument3. MFC中的消息映射机制是如何工作的?A. 直接调用函数B. 通过消息队列C. 通过函数指针D. 通过反射4. 下列哪个不是MFC中常用的消息类型?A. WM_PAINTB. WM_COMMANDC. WM_TIMERD. WM_USER5. MFC中,哪个宏用于创建对话框类?A. DECLARE_MESSAGE_MAPB. BEGIN_MESSAGE_MAPC. DDX/DDVD. DLGTEMPLATE6. 在MFC中,如何将控件与变量关联起来?A. 使用控件IDB. 使用变量名C. 使用控件的类名D. 使用消息映射7. MFC中,哪个类提供了对文件操作的支持?A. CFileB. CStdioFileC. CArchiveD. CFileFind8. 在MFC中,如何创建一个单文档界面(SDI)应用程序?A. 使用CWinApp类B. 使用CFrameWnd类C. 使用CSingleDocTemplate类D. 使用CMultiDocTemplate类9. MFC中,哪个类用于管理应用程序的运行时状态?A. CWinThreadB. CWinAppC. CMainFrameD. CView10. 下列哪个不是MFC中的消息处理函数?A. OnCreateB. OnDestroyC. OnInitDialogD. OnClose二、简答题(每题5分,共20分)1. 简述MFC框架中的消息循环机制。

2. 解释MFC中的资源文件(.rc)和资源编辑器的作用。

3. 描述如何使用MFC创建一个基本的对话框应用程序。

MFC的课后练习——包含MFC基础代码编程,肯定对你有一定的帮助

MFC的课后练习——包含MFC基础代码编程,肯定对你有一定的帮助

第一章 Windows应用程序基础知识1-2 什么是Windows API函数?答:用来开发Windows SDK应用程序的软件开发工具包是用C语言编写的一个大型函数库,这个库中的函数叫做API函数。

1-5 什么是事件?试举例说明。

答:能触发程序做出相应反应的因素或动作叫做“事件”。

例如,在键盘上按下了一个键、鼠标的单击或双击、应用程序窗口的显示和销毁等。

1-7 什么是消息循环?答:在创建了窗口的应用程序中,应用程序将不断地从消息队列中获取消息,并将消息指派给指定的窗口处理函数来处理,然后再回来从消息队列获取消息,这个不断重复的工作过程叫做消息循环。

1-9说明Windows应用程序的主函数、窗口函数与Windows系统之间的关系。

答:Windows应用程序的主函数和窗口函数都是系统调用的函数,主函数是在应用程序启动时由系统首先调用的函数,而窗口函数是主函数在消息循环中获得消息并把消息派送给系统之后,由系统调用的用来处理消息的函数。

第二章 Windows应用程序的类封装2-1 在窗体类CframeWnd中需要封装哪些成员?答:在窗体类CframeWnd中要封装窗口句柄、窗口类的定义、注册窗口类、创建窗口、显示更新窗口。

2-3 在MFC程序设计中,如果要建立拥有自己风格的主窗口,应该重写什么函数。

答:继承CWinAPP类并需要重写该类的成员函数InitInstaance。

2-4什么是消息映射表?答:在Windows SDK应用程序的窗口函数中,是采用switch-case分支结构实现消息处理的,这种方式不适合面向对象设计的要求。

因此MFC建立了一套自己的消息映射机制——消息映射表。

从外观来看,这种表有些类似学校中使用的学生名册,学号相当于消息号,学生姓名就相当于消息处理函数名,学号和学生号一一对应(映射)。

而MFC把实现表的代码用宏封装起来了。

第三章 MFC应用程序框架3-3简述构成文档/视图结构应用程序框架的四个MFC派生类,并说出它们的功能。

MFC的复习资料有试题包括答案

MFC的复习资料有试题包括答案

1-1 什么是Windows SDK程序?答:使用软件开发工具包开发出来的Windows应用程序叫做Windows SDK程序。

1-3 打开windows.h文件,看一下Windows系统的句柄是什么数据类型的?答:整型。

1-5 什么是事件?答:能触发程序做出相应反应的因素或动作叫做“事件”。

1-6 如何显示和更新窗口?答:调用函数ShowWindow显示窗口,调用函数UpdateWindows更新窗口。

1-7 什么是消息循环?答:在创建了窗口的应用程序中,应用程序将不断地从消息队列中获取消息,并将消息指派给指定的窗口处理函数来处理,然后再回来从消息队列获取消息,这个不断重复的工作过程叫做消息循环。

1-9 说明Windows应用程序的主函数、窗口函数与Windows系统之间的关系。

答:Windows应用程序的主函数和窗口函数都是系统调用的函数,主函数是在应用程序启动时由系统首先调用的函数,而窗口函数是主函数在消息循环中获得消息并把消息派送给系统之后,由系统调用的用来处理消息的函数。

2-1 在窗体类CframeWnd中需要封装哪些成员?答:在窗体类CframeWnd中要封装窗口句柄、窗口类的定义、注册窗口类、创建窗口、显示更新窗口。

2-2 应用程序类CwinApp应该具备那些主要功能?答:创建、显示应用程序的窗口和建立消息循环。

2-3 在MFC程序设计中,如果要建立拥有自己风格的主窗口,应该重写什么函数。

答:继承CWinAPP类并需要重写该类的成员函数InitInstaance。

3-3 简述构成文档/视图结构应用程序框架的四个MFC派生类,并说出它们的功能。

答:假如工程名称为MyPrj则MFC AppWizard会自动创建一下四个派生类来构成应用程序的框架。

.CFrame类的派生类CMainFrame;.CWinApp类的派生类CMyPrjApp;.CDocument类的派生类CMyPrjDoc;.CView类的派生类CMyPrjView。

最新MFC纯复习题04资料

最新MFC纯复习题04资料

实用软件技术复习题1 在用API编写Windows程序时,要有一个入口函数,它的函数名和功能是什么?答:在Windows编程中这个入口函数就是WinMain()。

WinMain函数主要用于初始化程序,显示主窗口,并进入一个消息循环。

2 在Windows程序的入口函数WinMain()中有一个消息循环,代码如下:while (GetMessage(&msg)){TranslateMessage(&msg);DispatchMessage(&msg);}上述代码中个函数作用是什么?答:通过GetMessage函数从线程的消息队列中取出消息,用TranslateMessage函数将消息解释后,再调用DispatchMessage将该消息分发至相应的窗口过程(WndProc)进行处理。

3 Windows程序中有一个窗口函数,该函数的作用是什么?答:每一个窗口都应该有一个“窗口函数”(window procedure,或称window function)。

如果窗口获得一个消息,则这个窗口函数必须判断消息的类别,决定处理的方式。

4 在Windows系统中分别定义了两个数据类型用来表示应用程序对象的句柄及窗口对象的句柄,这两个数据类型是什么?答:应用程序:数据类型HINSTANCE,也常把HINSTANCE的变量命名为hInstance,窗口:数据类型为HWND(也写成HWindow或HWND)。

5 利用AppWizard生成的多文档应用程序包括哪几个主要的类?答:主要是CWinApp, CDocument, CView, CFrameWnd派生,另外再加上CDocTemplate, 这5个类构成了大部分MFC应用程序的核心,6 MFC类库可分为哪两部分?答:MFC类库可以分为两部分,一部分是MFC类,另一部分是全局函数(变量)和宏。

7 MFC中下列类的类名分别是什么?应用程序类(CWinApp)、视图类(CView)、文档类(CDocument)、窗口类(CWnd)、主框架窗口类(CFrameWnd)、文档模板类(CDocTemplate)、对话框类(CDialog)、异常类(CException)、字符串类(CString)、菜单类(CMenu)、工具栏类(CToolBar)、状态栏类(CStatusBar)、静态控件类(CStatic)、按钮控件类(CButton)、编辑控件类(CEdit)、列表框控件类(CCListBox)、组合框控件类(CComboBox)、滚动条控件类(CScrollBar)。

MFC复习资料

MFC复习资料

第一章:1、windows应用程序的概念和特点?答:windows是一种更操作系统,以windows作为平台运行的应用程序叫做windows应用程序,它的一个突出特点树一个美观的图形用户界面(GUI)。

2、什么是API函数?答:可以在应用程序中调用的,用C语言编写,有操作系统提供,用户可以使用的函数,有窗口管理函数、图形设备函数和系统服务函数。

3、事件。

消息的概念?答:触发计算机程序作出向反应的刺激叫事件;描述各种信息的结构,对事件得的描述。

4、Windows系统主函数、窗口函数的关系?答:主函数和窗口函数都是有windows系统来调用的函数,只不过主函数是应用程序启动之后,系统首先调用的函数,而窗口函数是主函数在获得消息并把消息发送个系统之后,有系统产生事件的窗口所使用的窗口类型提供的指针调用的函数。

5、主函数的任务?答:创建并显示窗体和实现消息循环。

其中在创建显示窗体中还应有三步即注册窗口、创建窗口和显示窗口。

第二章:1、什么是消息映射表?答:消息系统对于一个win32程序来说十分重要,它是一个程序运行的动力源泉。

一个消息,是系统定义的一个32位的值,他唯一的定义了一个事件,向Windows发出一个通知,告诉应用程序某个事情发生了,系统在发生输入事件时产生消息。

这样消息映射表就是将各类信息及处理函数指针规范统一的填写到表中。

2、消息映射WM_LBUTTONDOWN消息为例说明用宏声明实现?答:public:afx_msg void OnLButtonDown()//窗口类声名中BEGIN_MESSAGE_MAP(CMyWnd,CFrameWnd) //消息映射的实现ON_WM_LBUTTONDOWN()END_MESSAGE_MAP()3、在窗口类CFrameWnd中需要封装哪些成员?答:需要封装窗口句柄、窗口类的定义、注册窗口类、创建窗口、显示更新窗口。

4、在MFC程序设计中,如果要建立拥有自己风格的主窗口,应该重写什么函数?答:继承CWinApp类并需要重写的成员函数为InitInstance。

MFCWindows应用程序设计复习题.docx

MFCWindows应用程序设计复习题.docx

MFC Windows 应用程序设计【复习】第1章 Windows 应用程序基础知识1. Windows 程序设计是一种(C )的程序设计模式。

A :结构化B :面向对象C :事件驱动方式D : XP2. 用户从所有可能的操作中任意选择,被选择的操作会产生某些特定的(), 这些事件发生后的结果是向程序中的某些对象发出(),然后这些对象调用相应 的(C )来完成特定的操作。

A :消息,事件,程序B :消息,命令,消息处理函数C :事件,消息,消息处理函数D :事件,消息,程序3•消息的组成(C )A :消息名称(UINT ) 和两个参数(WPARAM, LPARAM ) 和两个参数(HPARAM, LPARAM ) 4.程序在(B )对消息进行分析 A :入口函数(WINMAIN )中B :在窗口过程函数(WNDPROC )中C :收到消息时D :消息发生时5. 一个消息(B )A :可以不被窗口接受B :必须由一个窗口接收C :可以由一个或多个窗口接收D :必须由多个窗口接收6. 当没有为某消息编写消息处理时(C )A :不进行处理B :程序岀错C :默认的窗口过程进行处理D :无法发出此消息B : 消息名称(UINT ) 和参数(PARAM )C :消息名称D :消息名称 (UINT) (UINT)7. 应用程序接收到(A )消息时停止接收其他消息A:WM_QUIT B:WM_DESTORYC:W M_PAINT D:WM_COMMAND8. 下列Windows数据格式中,代表设备句柄的是(B )。

A. HWNDB. HDCC. HINSTANCED. HFONT9. 典型的Windows窗口程序的流程为:(A )A. 注册窗口类・>创建窗口・>显示窗口・>更新窗口・>消息循环B. 创建窗口・>注册窗口类・>显示窗口・>更新窗口・>消息循环C. 创建窗口・>注册窗口类・>显示窗口・>更新窗口・>消息循环D. 注册窗口类・>创建窗口・>更新窗口・>显示窗口・>消息循环10. 在WinMain函数的原型中HINSTANCE hlnstance定义的是(A )HINSTANCE hPrevInstance 定义的是(B )LPSTR IpCmdLine 定义的是(C )int nCmdshow)定义的是(D )A:当前实例句柄B:先前实例句柄C:指向命令行参数的指针D:窗口的显示状态11. 以下哪个不是WinMain函数中完成的操作(D )A:注册窗口类B:创建应用程序主窗口C:进入应用程序消息循环D:调用窗口过程函数12. 下面说法错误的是(D)A:一个Windows程序可以包含多个窗口过程B:一个窗口过程总是与调用RegisterClass注册的特定窗口类相关联C: CreateWindow函数根据特定窗口类创建一个窗口,但基于一个窗口类,可以创建多个窗口D:窗口过程必须由程序调用,而不是由Windows本身直接调用13. Windows应用程序中使用了各种Windows API函数声明,宏定义,数据类型定义,(D)是主要的包含文件。

MFC答案

MFC答案

1.使用软件开发工具包开发出来的Windows应用程序,叫做Windows SDK程序2.用来开发Windows SDK 应用程序的软件开发工具包是用C语言编写的一个大型函数库,这个库中的函数叫做API函数3.整型5.能触发程序作出相应反映的因素或动作叫做事件,例如在键盘上按下一个键6.调用函数ShowWindow显示窗口,调用函数UpdateWindow更新窗口7.在创建了窗口的应用程序中,应用程序将要不断地从消息队列中获取消息,并将消息指派给指定的窗口处理函数来处理,然后再回来从消息队列中获取消息,这个不断重复的工作过程叫做消息循环8.注册窗口类,创建应用程序的窗口和建立消息循环9.Windows应用程序的主函数和窗口函数都是系统调用的函数,主函数是在应用程序启动时由系统首先调用的函数,而窗口函数是主函数在消息循环中获得消息并把消息派给系统之后,由系统调用的用来处理消息的函数1.在窗口类CFrameWnd中要封装窗口句柄,窗口类的定义,注册窗口类,创建窗口和显示更新窗口2.创建,显示应用程序的窗口和建立消息循环3.继承CWinApp类并需要重写该类的成员函数InitInstance4.在Windows SDK应用程序中的窗口函数中,是采用switch-case 分支结构实现来实现消息的处理,这种方式不适合面向对象设计的要求.因此MFC建立了一套自己的消息映射机制—消息映射表.4.是依靠视图类的成员函数GetDocument来返回文档对象指针,然后再通过该指针来访问文档类的数据成员或函数成员的1.为了屏蔽硬件输出设备的多样性,Windows系统为程序员提供了一个可以操作这些硬件却与硬件无关的接口,于是就可以把对不同设备的操作方法统一起来lientDC CMetaFileDC CPaintDC CWindowDC3.使用CDC的成员函数SelectObject把绘图工具载入设备描述环境2.Hello C++1.单文单界面多文档界面基于对话框的界面2.用户使用应用程序时,如果该程序一次只能打开一个文档,那么这种程序就叫做SDI界面的程序,反之就叫做MDI界面的程序3.6.通知文档所对应的所有窗口同时进行重绘7.因为应用程序的所有拆分窗口显示的应该是同一个文档,所以当文档发生变化时,该文档所对应的窗口当然要同时更新显示以正确地反映文档的内容8.无效显示区一般定义为窗口用户区上的一个矩形区域,这个区域应覆盖所有因文档发生变化而需要重绘的部分,当程序需要重新绘制一个图形时,只要重新绘制该矩形内部的图形就可以了1.根据产生鼠标消息是鼠标光标所处的位置,鼠标消息分为两类:客户区鼠标消息和非客户区鼠标消息.在应用程序窗口中,用户可以绘图的部分叫做客户区或用户区,而除此之外的区域叫做非客户区.鼠标在客户区产生的小心叫做客户区鼠标消息,在非客户区产生的消息叫做非客户区鼠标消息.1.资源是一种数据.2. 在文本编辑器中直接对资源脚本文件和资源头文件进行编辑使用C++的资源编辑器对资源脚本文件和资源头文件进行编辑3.用户选中菜单项时,会发出WM_COMMAND消息,系统根据菜单项的标识ID来识别是哪一个菜单项发出的消息1.序列化,就是指应用程序可以把对象的当前状态,以文件的形式写入永久性存储体中,在需要时还可以从永久性存储体中读取它,并可以在应用程序中重建对象的过程具有以上能力的对象叫做永久性对象2宏ARE_SERIAL和IMPLEMENT_SERIAL1.首先在使用控件的类中声明控件,在合适的位置创建对象,然后向应用程序的消息映射中添加需要的消息,最后实现消息响应函数3因为在一般的情况下都是为某一窗口对象创建控件,所以必须调用Create函数创建控件时,在控件的父窗口参数中要将this作为参数5控件标识符的作用是用来区分应用程序中的不同控件,一般情况下,创建控件的最佳位置在OnCreate成员函数用来描述对话框外观及对话框上控件布局的文本文件叫做对话框模版资源文件1.CDialog2.通常在类CDialog的OnInitDig成员函数中进行对话框的初始化.这个函数在对话框启动后,且还没有显示的时候被调用5.模式对话框和非模式对话框.它们的区别:模式对话框直到退出对话框才返回应用程序,非模式对话框可以与应用程序同时工作。

MFC期末复习简答题及答案

MFC期末复习简答题及答案

MFC 期末复习及答案1 简述MFC 应用程序的执行过程。

2 简述文档/视图与其他类对象的关系。

3 简述MFC 消息映射机制。

4 消息WM_LBUTTONDOWN 的消息映射宏和消息处理函数是什么?5 如何自定义消息?如何发送自定义消息?6 GDI 创建哪几种类型的图形输出?7 什么是设备环境?它的主要功能有哪些?8 什么是GDI,它有什么功能?MFC 将GDI 函数封装在哪个类中?9 请叙述设备无关性的含义,实现设备无关性需要哪几个环节?10 MFC 提供了哪几种设备环境类?它们各自有什么用途?11 简述传统的SDK 获取设备环境的方法。

12 简述创建和使用自定义画笔的步骤。

13 简述采用MFC 方法编程时,显示一个DDB 位图的步骤。

14 简述菜单设计的主要步骤。

15 为应用程序创建快捷菜单主要有哪些方法?16 如何动态创建菜单?17 创建工具栏的基本步骤有哪些?18 简述MFC 创建状态栏所做的工作。

19 简述创建和使用模态对话框的主要步骤。

20 如何向对话框模板资源添加控件?如何添加与控件关联的成员变量?21 什么是DDX 和DDV?编程时如何使用MFC 提供的DDX 功能?22 简述创建属性页对话框的主要步骤。

23 在应用程序中访问控件的方法有哪些?24 单选按钮控件如何成组?25 组合框与列表框相比有什么不同?如何给组合框添加初始的列表项?26 通过哪几个主要成员函数完成文档与视图之间的相互作用?并简述这些成员函数的功能。

27 简述文档序列化与一般文件处理的区别。

28.如何让用户定义的类支持序列化?1 简述MFC 应用程序的执行过程。

MFC 应用程序启动时,首先创建应用程序对象theApp。

这时将自动调用应用程序类的构造函数初始化对象theApp,然后由应用程序框架调用MFC 提供的WinMain( )主函数。

在WinMain( )主函数中,首先通过调用全局函数GetApp( )来获取theApp 的指针pApp,然后通过该指针调用theApp 的成员函数InitInstance( )来初始化应用程序。

MFC课后简答题(1~11章)

MFC课后简答题(1~11章)

MFC课后简答题(1~11章)第⼀章1、什么是Windows SDK程序?使⽤SDK开发出来的Windows应⽤程序,叫做Windows SDK程序2、什么是Windows API函数?为了设计Windows 应⽤程序,Windows 提供了⼤量预定义的⽤C语⾔编写的函数3、查看windows.h⽂件,说明Windows系统的句柄的类型。

整型4、窗⼝句柄、当前程序应⽤实例句柄、设备环境句柄5、什么是事件?试举例说明。

能触发程序作出相应反映的刺激叫做事件,例如在键盘上按下⼀个键6、如何显⽰和更新窗⼝?调⽤函数ShowWindow显⽰窗⼝,调⽤函数UpdateWindow更新窗⼝7、什么是消息循环?在创建了窗⼝的应⽤程序中,应⽤程序将要不断地从消息队列中获取消息,并将消息指派给指定的窗⼝处理函数来处理,然后再回来从消息队列中获取消息,这个不断重复的⼯作过程叫做消息循环8、Windows应⽤程序的主函数有哪3个主要任务?注册窗⼝类、创建应⽤程序的窗⼝和建⽴消息循环(注:如果题⽬问有哪2个主要任务,应该答后两个)9、说明Windows应⽤程序的主函数,窗⼝函数与Windows系统之间的关系。

主函数和窗⼝函数都是Windows系统调⽤的函数;主函数是应⽤程序启动后,系统⾸先调⽤的函数;窗⼝函数是主函数在消息循环中获得消息并把消息发送给系统之后,由系统调⽤函数。

第⼆章1、在窗⼝类CFrameWnd中需要封装哪些成员?窗⼝句柄,窗⼝类的定义,注册窗⼝类,创建窗⼝和显⽰更新窗⼝(注:对应书上P16 //窗体类的声明这⼀段代码)2、应⽤程序类CWinApp应该具备哪些主要功能?注册、创建、显⽰应⽤程序的窗⼝;建⽴消息循环3、在MFC程序设计中,如果要建⽴拥有⾃⼰的风格的主窗⼝,应该重写什么函数?在CWinApp的派⽣类中重写InitInstance函数4、什么是消息映射表?在MFC中,能够根据消息取得消息处理函数的表,叫做消息映射表。

MFC-Windows应用程序设计复习题2

MFC-Windows应用程序设计复习题2

MFC-Windows应用程序设计复习题2第9章MFC的文件处理机制1) 文档负责将数据存储到磁盘中,存取过程称为(D) 。

A. 文件访问B. 格式化C. 文件读写D. 串行化2) 一个CArchive 类对象必须与一个( C ) 对象相关联。

A. CObjectB. CFileDialogC. CFile类D. CDocument3) 不能将Newfile 文件的文件指针定位在文件头的方法是( B ) 。

A. Newfile.Open("MyFile.txt", CFile::modeCreate)B. NewFile::Seek( 0L, CFile::end)C. Newfile.SeekToBegin()D. Newfile.Seek(0L, CFile::begin)4)( A )函数用于获取指定文件的文件名。

A. GetFileName()B. GetStatus()C. GetFilePath()D. GetFileTitle()5) 当应用程序读取或写入文件时,文档对象的( )函数被调用,并将( )对象作为参数传递。

6) ( CArchive )类是一个对象数组类,它可以存放任何从CObject 派生出的对象,还可以根据元素的数量动态地调整自己的大小。

7) 在Visual C++中,数据文件的操作通常按照( 打开) 、( 操作) 、( 关闭) 的步骤进行。

8) 写出以读写方式打开文件student.txt 的语句序列(File.Open(“student.txt”,CFile:modeReadWrite); ) 。

12. 关于文件对话框,以下说法正确的是(C )。

A. 文件对话框只能打开单个文件B. 文件对话框可以设置默认的打开文件C. 文件对话框可以限制访问的文件类型D. 文件对话框是无模式对话框13. 在窗口中添加一个仅仅用于显示文字提示的控件,这个控件的类为:(A )A. CStaticB. CButtonC. CEditD. CComboBox14. 在MFC编程中,所有基于窗口的控件类的基类是(A )。

MFC习题答案

MFC习题答案

MFC第1章习题4.①HWND 是窗口句柄②HINSTANCE 是当前程序应用实例句柄③HDC 是设备环境句柄5.可能触发计算机程序作出相应反应的刺激,叫做事件.例如:键盘输入,鼠标的单击或双击6.在Windows应用程序的主函数中,首先要注册窗口类,然后创建并显示窗口。

创建窗口后程序就进入消息循环,在消息循环中,程序不断地获得消息并将消息派送给对应的窗口函数进行处理,来更新窗口。

7.系统为程序建立了叫做消息队列的一个存储空间,在程序的运行过程中如果发生了一个事件,Windows就会把这个事件所对应的消息送入消息队列等待使用.应用程序为了取得消息队列中的消息,需要调用Windows提供一个API函数GetMessage,并利用这个函数的返回值组织一个循环来不断获取消息,一但获取到消息,就把这个消息派送给系统.这个循环就叫做消息循环.8.一是创建应用程序的界面--窗口;二是建立前面提到过的消息循环9.主函数和窗口函数都是由Windows系统来调用的函数,只不过主函数是程序启动之后,系统首先调用的函数;而窗口函数是主函数在获得消息并把消息发给系统之后,由系统调用的函数.不同消息所对应的操作就是由窗口函数完成的,Windows程序员的工作就是编写窗口函数的case中的代码.第2章习题1.在窗体类CFrameWnd中需要封装窗口句柄和与对窗口操作的API函数。

2.应用程序类CWinApp应该具备的主要功能:至少应该有一个窗体类的对象m_pMainWnd 作为类的数据成员,同时,在这个类中还应该有函数成员InitInstance和Run,在函数InitInstance中创建窗体对象m_pMainWnd,并通过它调用窗口类的成员函数来进行注册、创建、显示等初始化操作;用成员函数Run来进行消息循环。

3.在MFC程序设计中,如果要建立拥有自己风格的主窗口,应该在基类中将需要重新定义的某些成员函数声明为虚函数。

  1. 1、下载文档前请自行甄别文档内容的完整性,平台不提供额外的编辑、内容补充、找答案等附加服务。
  2. 2、"仅部分预览"的文档,不可在线预览部分如存在完整性等问题,可反馈申请退款(可完整预览的文档不适用该条件!)。
  3. 3、如文档侵犯您的权益,请联系客服反馈,我们会尽快为您处理(人工客服工作时间:9:00-18:30)。

名词解释1、事件:可能触发计算机程序做出相应反应的刺激2、句柄:为了区别于普通变量的标识,Windows把这种复杂对象的标识叫做句柄3、消息:为了描述事件的各种信息(例如,何时何地发生了何种事件等),Windows定义了一个结构,这个结构就叫做”消息”4、Windows的API函数:由操作系统提供的,用户可以使用的函数就叫做API5、Windows SDK程序:使用软件开发工具包开发出来的Windows 应用程序6、资源:资源就是一种可供Windows应用程序利用,可单独编辑,并可动态加载的数据7、图象设备接口(GDI):Windows把用于改变DC属性的操作,即与绘图相关的操作都制作成函数,这些函数的集合就叫做图形设备接口8、CDC类:在面向对象程序设计思想中,把DC和GDI函数封装到一起形成CDC类9、回调函数:系统调用用户编写的函数过程叫做“回调”,所以这种被系统调用的函数也叫做“回调函数”10、无效显示区:在有效提高拆分窗口显示更新效率的方法中,程序只重绘必须重绘的区域11、控件:Windows设计了一些具有图形外观的程序实体,这些程序实体在鼠标或键盘的作用下会使程序出现不同的响应,这些可以接收或者产生事件的程序实体就叫做控件12、类信息表:MFC程序在不同的场合下还经常用到类的其他信息,于是MFC就把这些信息统统都放在映射表项中,并把它叫做类消息表13、消息循环:while(GetMessage(&msg,NULL,NULL,NULL)) {TranslateMessage(&msg);DispatchMessage(&msg);}简答题1.位图的主要步骤:1)用位图类来定义一个对象(Bitmap)2)把位图资源载入位图对象3)获取位图信息4)把位图选入内存设备环境5)显示位图2.利用AppWizard生成默认的SDI应用程序My时,向导自动生成的哪四个类?及其相应的功能。

CMainFrame(构建应用程序,显示窗架)CMyApp(整个应用程序)CMyDoc(管理数据)CMyView(显示数据)3.创建窗口的五个步骤:1)定义窗口2)注册窗口3)创建窗口4)显示窗口5)消息循环4.简述从Cdocument类派生自己需要的文档类的一般步骤。

1)以CDocument为基类,派生出一个类2)在此类中添加数据成员和成员函数3)在构造函数中进行初始化数据成员4)在实现部分编写对应的成员函数5.以鼠标消息WM_MOUSEMOVE为例,写出在MFC编程中,为视图CJKXView手工添加消息响应函数的步骤与相关代码。

1)在类CJKXView的头文件中添加声明消息响应函数,代码为:afx_msg void OnMOUSEMOVE(UINT nflags,CPonint point);2)在现实文件BEGIN_MESSAGE_MAP与END_MESSAGE_MAP( )之间添加消息映射表ON_WM_MOUSEMOVE( )3)添加消息响应函数void CMyview::Onmousemove(UINT nflags,CPoint point);6.在MFC中创建和使用模式对话框的主要步骤有哪些?1)使用对话框编辑器创建对话框资源;2)在对话框资源内创建一个以CDialog为基类派生ddd对话框类3)在使用对话框的类中把创建类的dddd.h头文件包含在内#include“ddd.h"4)在使用函数里OnMOUSEMOVE里添加对象{ddd dd;dd DOMOdal();}创建类的dddd.h头文件包含在内}填空题:1.GetMessage( )被用来从消息队列获取消息,2.函数TranslateMessage( )用来把键盘消息转换为字符消息,函数DispatchMessage( )用来向系统派送消息。

3.GetDocument( )函数是指向文档对象指针。

4.工作线程和用户界面线程的区别:是否拥有界面。

5.打开数据库的两种方式:dynaset和snapshot(使用CRecordset对象对数据源进行操作)。

6.UpdateData函数为真时:控件将向对应成员变量写入数据;为假时:控件将从对应成员变量读取数据。

编程题:1、为学员信息设计一个类CWorker,包含:编号、姓名、出生日期、家庭住址、手机号,并使该类可以实现串行化。

请写出可以实现要求的CWorker.h和CWorker.cpp文件的内容。

//CWorker.hclass CWorker:public CObject {public:CString Num;// char Num[10];CString Name;CTime Birth;CString Address;CString Tel;DECLARE_SERIAL(CWorker) // 使对象可串行化virtual void Serialize( CArchive & ar ); //重载串行化函数CWorker(){。

}};//CWorker.cppMPLEMENT_SERIAL(CWorker,CObject,0)void CWorker::Serialize(CArchive & ar){ CObject::Serialize(ar);if ( ar.IsStoring() ){ ar<<Num<<Name<< Birth <<Address<< Tel;}else{ ar>>Num>>Name>> Birth >>Address>>Tel;}}附加题(可供参考)1、Windows API中API的英文全文为application programming interface ,中文译文是应用程序接口。

2、MFC的英文全文为 Microsoft Foundation Classes ,中文译文是微软基础类库。

3、GDI的英文全文为 Graphics Device Interface ,中文译文是图形设备接口。

4、全局函数 AfxGetApp() 可以得到CWinApp应用类指针。

5、MFC中可自动重绘的绘图代码一般位于项目的视图类的 OnDraw() 函数中。

6、在视图中, GetDocument() 函数可得到对应的文档对象指针。

7、在文档中,GetFirstviewPosition() 和GetNextview() 配合可用来遍历所有和文档关联的视图。

8、在MFC中,用 CRect 类来描述一个矩形区域的大小。

9、用CArray类创建数组,在使用一个数组之前,使用 SetSize 建立它的大小和为它分配内存。

10、Afx是Application Framework的简写,以Afx开头的函数都是全局函数,可以在任一个类实现中调用。

11、MFC按线程是否拥有用户界面,把线程分为两种:工作线程和用户界面线程,它们根本的区别是是否能够拥有消息响应机制。

12、使用CFile类打开文件的成员函数是 Open() 。

13、在任何时刻设备环境中必须有一支画笔,并且只能有一支。

因此在使用自己定义的画笔时,要使用CDC的函数把默认画笔替换为自己定义的画笔,这个函数是SelectObject() 。

14、MFC的缺省的映射模式是MM_TEXT,对应的单位为像素。

15、在视图类中为了访问与视图关联的文档对象中数据,应该先调用 GetDocument()函数得到相关联文档对象指针。

16、用 CArray() 类对象可以创建数组,由于这是一个类模板,因此可以对任意数据类型的数据进行处理。

17、全局函数 GetDocument() 可以得到框架窗口指针。

18、在MFC中,类 CRect 的对象可以描述一个矩形。

19、MFC用 CPoint 类来描述一个点。

20、利用MFC AppWizard可以生成SDI界面、 MDI 界面和基于对话框界面的程序。

21、用MFC编写的Windows应用程序时,线程之间同步的对象有:事件、临界段、互斥体和信号量。

22、在框架窗口中, GetActiveDocument()函数可得到当前活动文档指针, GetActiveView()函数可得到当前活动视指针。

23、MFC中生成自定义模态对话框时先定义对话框类对象,然后调用 DoModel()成员函数创建模态对话框。

24、MFC的缺省的映射模式是 MM_TEXT,对应的单位为像素。

25、语句CArray<CRect,CRect&> m_P; 定义了一个数组对象m_P,数组元素的数据类型为 CRect ,而数组对象成员函数的形参数据类型为指针。

26、定义一个具有动态创建对象能力类时,必须在该类中定义一个无参的构造函数。

27.MFC对话框类的基类是 CDialog ,用户自定义对话框类都是从它派生而来。

28.Windows系统是一个消息响应事件驱动的操作系统,消息是应用程序与操作系统交互的手段。

29.随机访问一个文件的内容需要在打开的文件中重新定位一个指针,可以使用CFile类的 Seek()成员函数。

30.可以使用UpdateData成员函数激发数据交换。

其原型为:BOOL UpdateData( BOOL bSaveAndValidate = TRUE ); 当其参数bSaveAndValidate为TRUE时,控件把数据传递到与之相关联的数据成员。

31.可以使用UpdateData成员函数激发数据交换。

其原型为:BOOL UpdateData( BOOL bSaveAndValidate = TRUE ); 当参数bSaveAndValidate为FALSE时,相关联的值传到控件。

选择填空题(请将所选答案的番号写在答题框内。

每空只有一个正确答案。

)1、所有的文档类都派生于 C ,所有的视图类都派生于 A 。

A.CView B.C Window C.CDocument D.CFormView2、在进行绘图时, B 用于指定图形的填充样式, A 用于指定图形的边框样式。

A、画笔B、画刷C、区域D、位图3、B 代表窗口客户区的显示设备上下文, C 代表整个窗口的显示设备上下文。

A.CPaintDC B.CClientDC C.CWindowDC D.CMetaFileDC4、C包括键盘和鼠标的输入。

这一类消息首先放在系统消息队列中,然后由Windows将它们送入应用程序消息队列中,由程序来处理消息; D 用来与Windows的控制对象,如列表框、按钮、复选框等进行双向通信。

当用户在列表框中改动当前选择或改变了复选框的状态时发出此类消息。

相关文档
最新文档