MFCWindows应用程序设计复习题.docx 下载本文

内容发布更新时间 : 2024/12/23 21:13:23星期一 下面是文章的全部内容请认真阅读。

MFC Windows应用程序设计

【复习】

第1章 Windows应用程序基础知识

1. Windows程序设计是一种(C)的程序设计模式。 A:结构化 B:面向对象 C:事件驱动方式 D: XP

2. 用户从所有可能的操作中任意选择,被选择的操作会产生某些特定的(), 这些事

件发生后的结果是向程序中的某些对象发出(),然后这些对象调用相应 的(C)来完成特定的操作。

A:消息,事件,程序

C:事件,消息,消息处理函数 3?消息的组成(C ) A:消息名称(UINT)

B:消息,命令,消息处理函数 D:事件,消息,程序

B:消 息名称(UINT) 和参数(PARAM)

C:消息名称 (UINT) 和两个参数(WPARAM, LPARAM) 和两个参数

D:消息名称 (UINT) (HPARAM, LPARAM) 4.程序在(B )对消息进行分析 A:入口函数(WINMAIN)中 B:在窗口过程函数(WNDPROC)中 C:收到消息时 D:消息发生时 5. 一个消息(B) A:可以不被窗口接受 B:必须由一个窗口接收 C:可以由一个或多个窗口接收 D:必须由多个窗口接收

6. 当没有为某消息编写消息处理时(C) A:不进行处理 B:程序岀错

C:默认的窗口过程进行处理 D:无法发出此消息

7. 应用程序接收到(A )消息时停止接收其他消息 A: WM_QUIT C: WM_PAINT

B: WM_DESTORY D: WM_COMMAND

8. 下列Windows数据格式中,代表设备句柄的是(B )。 A. HWND C. HINSTANCE

B. HDC D. HFONT

9. 典型的Windows窗口程序的流程为:(A )

A. 注册窗口类?>创建窗口?>显示窗口?>更新窗口?>消息循环 B. 创建窗口?>注册窗口类?>显示窗口?>更新窗口?>消息循环 C. 创建窗口?>注册窗口类?>显示窗口?>更新窗口?>消息循环 D. 注册窗口类?>创建窗口?>更新窗口?>显示窗口?>消息循环 10. 在 WinMain函数的原型中HINSTANCE hlnstance定义的是(A )

HINSTANCE hPrevInstance 定义的是(B )LPSTR IpCmdLine 定义的是(C ) int

nCmdshow)定义的是(D )

B:先前实例句柄 D:窗口的显示状态 B:创建应用程序主窗口 D:调用窗口过程函数

A:当前实例句柄

C:指向命令行参数的指针 A:注册窗口类

C:进入应用程序消息循环 12. 下面说法错误的是(D)

A: 一个Windows程序可以包含多个窗口过程

B: 一个窗口过程总是与调用RegisterClass注册的特定窗口类相关联

C: CreateWindow函数根据特定窗口类创建一个窗口,但基于一个窗口类,可 以创

建多个窗口

11. 以下哪个不是WinMain函数中完成的操作(D )

D:窗口过程必须由程序调用,而不是由Windows本身直接调用

13. Windows应用程序中使用了各种Windows API函数声明,宏定义,数据类 型定

义,(D)是主要的包含文件。

A STDIO.H B WINDEF.H C WINUSER.H D WINDOWS.H

14. 注册窗口类型时,窗口风格各个选项可以用(B)运算符联合表示。 A AND (&) BOR (|) C 逻辑与(&&) A:已经创建了这个窗口,但还未分配內存 B:已经创建并分配了内存

C:还未真正创建窗口,等待分配内存

D 逻辑或(||)

15. 在函数CreateWindow ()调用返回之后,Window内部(B )

D:还未真正创建窗口,但已经分配内存

16. 关于函数ShowWindow (HWND hwnd,int iCmdShow),下面说法错误的是

(C)

A: hWnd是窗体句柄

B: nCmdShow是窗体显示方式

C: nCmdShow与WinMain函数定义的窗体显示方式相同 D: nCmdShow与WinMain函数定义的窗体显示方式必须不同 17. 关于函数UpdateWindow ()的说法正确的是(D ) A该函数的作用是将窗口重新绘制

B调用该函数后,该函数发出WM PAINT消息 C该函数将消息发送给窗口函数进行处理 D以上答案都正确

18. 下面关于消息循环的说法错误的是(D)

A: Windows为当前运行的每个Windows程序维护一个“消息队列” B:程序通过执行一块被称为“消息循环”的代码从消息队列中取出消息 C:消息循环从GetMessage调用开始,它从消息队列中取出一个消息

D: GetMessage通常将一个指向msg的MSG结构的指针直接传递给窗口函数 WndProc

19. GetMessage对于除了 WM_QUIT之外的从消息队列中取出的所有消息都返 回

(A)

A:非 0 值 B: 0 C: 1 D: NULL

20. 在( D)之后,WinMain退出消息循环

A用户通过单击Close按钮或在系统菜单选择Close发出WM_DESTRO丫消息 B结

束对任何消息的DispatchMessage调用

C通过调用函数PostQuitMessage(O)在程序的消息队列中插入一个WM_QUIT 消

D GetMessage 取到一个 WM_QUIT 消息,程序继续执行 return msg.wParam 21. 下面说法错误的是(B)

A:窗口过程接受的每一个消息都是用一个数值来表示的 B:窗口过程在处理消息时,必须返回1