windows编程期末复习题_第1页
windows编程期末复习题_第2页
windows编程期末复习题_第3页
windows编程期末复习题_第4页
windows编程期末复习题_第5页
已阅读5页,还剩2页未读 继续免费阅读

下载本文档

版权说明:本文档由用户提供并上传,收益归属内容提供方,若内容存在侵权,请进行举报或认领

文档简介

1、精选优质文档-倾情为你奉上 WINDOWS程序设计一单项选择题 1. 项目文件的扩展名是【B】。 A)exe B)dsp C) dsw D)cpp2. 利用 ClassWizard 不能【D 】。 A)建立新类 B)进行消息映射 C) 增加类的成员变量 D)插入资源 3. 当滑块滑动时,滑块条控件将发送滚动消息来通知父窗口,垂直滑动条发送【C】消息。 A)WM_CHAR B)WM_HSCROLL C) WM_VSCROLL D)WM_CHANGE 4. 以下控件中,【C】没有 Caption 属性。 A)按钮B)组框 C) 编辑框D)静态文本框 5. 关于工具栏、菜单和加速键的关系,正确的说法

2、是【C】。 A)工具按钮与菜单必须一一对应 B)工具栏与加速键一一对应C)工具按钮不必与菜单一一对应 D)菜单与加速键一一对应 6. 所有的控件都是【B 】类的派生类,都可以作为一个特殊的窗口来处理。 A)CView B)CWnd C)CWindow D)CDialog 7. 使用 GetDC()获取的设备上下文在退出时,必须调用【A 】释放设备上下文。 A)ReleaseDC() B)delete C) DeleteDC() D)Detach() 8. 希望菜单无效,应该用 CCmdUI 类的【A 】成员函数。 A)Enable B)SetRadio C) SetCheck D)SetTex

3、t 9. 希望菜单前出现一个圆点,应该用 CCmdUI 类的【B】成员函数。 A)Enable B)SetRadio C)SetCheck D)SetText 10. 下面【A】不是 MFC 设备环境类 CDC 类的派生类。 A)GDI B)CPaintDC C) CClientDC D)CWindowDC 11. 使用【A】通用对话框类可用打开文件。 A)CFileDialog B) CPrintDialog C)CColorDialog D)CFontDialog 12. 列表框 CListBox 类的成员函数【A 】用来向列表框增加列表项,成员函数【C 】用来 清除列表项所有项目,成员函

4、数【F 】用来返回列表框的列表项总数。A)AddString() B)DeleteString() C)ResetContent()D)FindString() E) GetCurSel() F)GetCount() 13. 【C 】包括键盘和鼠标的输入。这一类消息首先放在系统消息队列中,然后由 Windows 将它们送入应用程序消息队列中,由程序来处理消息;【D 】用来与 Windows 的控制对象, 如列表框、按钮、复选框等进行双向通信。当用户在列表框中改动当前选择或改变了复选框 的状态时发出此类消息。 A)系统消息 B)用户消息 C) 输入消息 D)控制消息 14. 常用的 CButto

5、n 类的成员函数中: 【A 】 获得一个按钮控件的选中、选择和聚焦状 态; 【D 】 得到一个按钮的选中状态; 【C 】设置一个按钮的选中状态。 A)GetState() B)SetState()C)SetCheck() D)GetCheck() E) GetButtonStyle() 15. 用应用程序向导创建 MFC AppWizard(exe)应选择【B】选项卡。 A)Files B)Project C) Workspaces s D)Other Documents16. 运行程序的快捷键是【A】。 A)Ctrl+F5 B)F7 C) Ctrl+F7 D)F5 17. 设置和取消断点的快

6、捷键都是【A】。 A)F9 B)F5 C) F11 D)F1018. 在编辑某菜单项时,若要指明该菜单项是一个弹出式子菜单,必须选择属性对话框中的 【B】。 A)Separator B)Pop-up C)Inactive D)Grayed 19. 下列【C 】不是 MFC 消息映射机制有关的宏。 A)DECLARE_MESSAGE_MAP B)BEGIN_MESSAGE_MAP C)DECLARE_SERIAL D) END_MESSAGE_MAP 20. 要使鼠标箭头在按钮上暂停时能显示工具栏按钮提示, 必须设置工具栏的风格为【 B 】 。 A)CBRS_TOOLTIPS B)CBRS_FL

7、YBY C) CBRS_NOALIGN D)WS_VISIBLE21. 对话框的功能被封装在【B】类中。 A)CWnd B)CDialog C) CObject D)CCmdTarget 22. 滑动条是由滑动块和刻度线构成,按指定增量移动,CSliderCtrl 类的成员函数【B】代 表设置滑动块位置;【C】代表设置刻度线位置,一次只能设置一个刻度线,用于手动设置 刻度线;【F】代表设置刻度线的疏密程度,配合 Auto ticks 属性使用,每隔一定单位自动 显示一条刻度线。 A)SetRange() B)SetPos() C)SetTic() D) SetMark() E)SetPoint

8、() F)SetTicFreq() 23. 所有的文档类都派生于【C】,所有的视图类都派生于【A】。 A)CView B)CWindow C) CDocument D)CFormView 24. 滚动条类 CScrollBar 的成员函数规定了滚动条的操作。设置滚动条的范围使用【C】函 数,设置滚动条的位置使用【E】函数,获得滚动块的当前位置使用【F 】函数。 A)SetPos() B)SetRange() C)SetScrollRange() D)GetPos() E)SetScrollPos() F) GetScrollRange() F)GetScrollPos()25. 要将模式对话框

9、在屏幕上显示需要用到【B 】。 A)Create B)DoModal C) OnOK D)构造函数 26. 类 CButton 不是下列【D 】控件对应的类。 A)命令按钮 B)单选按钮 C) 复选框 D)静态文本框 27. 根据对话框的行为性质,对话框可以分为两类【B 】 A)对话框资源和对话框类 B)模式对话框和非模式对话框C) 对话框资源和对话框模板 D)消息对话框和模式对话框 二填空题 1、 用户可以通过项目工作区窗口的【ResourceView】视图来查看资源。 2、 一个单文档的 MFC 应用程序框架一般包括 5 个类:应用程序类、框架窗口类、 【视图 类】【文档类】和文档模板类。

10、 3、 改变菜单项文本是使用 CCmdUI 类的【SetText】成员函数。 4、 每个控件最多只能关联 Control 和 Value 类型成员变量各【1】个。 5、 MCF 的【CProgressCtrl】 类封装了进度条控件的各种操作,该类的成员函数 【SetRange】 用来设置进度条的范围。 6、 与 DOS 字符方式下的输出不同,Windows 是按【图形】方式输出的。 7、 Windows 是一个基于【消息】的消息驱动系统。 8、 项目工作区文件的扩展名是【dsw】 。 9、 【MessageBox】函数弹出一个小的对话框向用户显示短信息,并将用户最终的选择返 回给调用者。 10

11、、弹出快捷菜单使用的是 CMenu 类的【TrackPopupMenu】函数。 11、可以利用 CGdiObject 类的成员函数【CreateStockObject】将 GDI 对象设置成指定的库 存对象。 12、一个旋转按钮控件通常是一个相伴的控件一起使用的, 该控件的 Tab 键次序必须 【小于】 旋转按钮。 13、调用【Create】成员函数创建动态分割窗口,而静态分割窗口是调用【CreateStatic】成 员函数创建的。 14、在通常情况下,视图派生类的成员函数中通过调用【GetDocument】函数得到当前文档 对象的指针。 三简答题 简答题1、 简述创建自定义工具栏的基本步骤。

12、(1)创建工具栏资源; (2)构建一个 CToolBar 对象;(3)调用 CToolBar:Create 或 CreateEx 函数创建工具栏窗口; (4)调用 CToolBar:LoadToolBar 载入工具栏资源。 2、 运行程序后单击鼠标右键弹出对话框提示“您按下了鼠标右键”对话框。简要说明设计 步骤。(1)新建基于单文档的应用程序; (2)用类向导映射鼠标右键消息; (3)在消息函数中添加代码:MessageBox(“您按下了鼠标右键”);3、 简述采用 MFC 方法编程时,显示一个 DDB 位图的步骤。(1)声明一个 CBitmap 类的对象,使用 LoadBitmap 函数将位

13、数装入内存。 (2)声明一个 CDC 类的对象,使用 CreateCompatibleDC 函数创建一个与显示设备环 境兼容的内存设备环境。 (3)使用 CDC:SelectObject 函数将位图对象选入设备环境中,并保存原来设备环境的 指针。 4、 如何给组合框添加初始的列表项? 可以通过组合框控件属性对话框的 Data 选项卡给组合框添加初始的列表项。 五、程序设计题 1. “乘法器”示例程序,使用者在“乘数”或者“被乘数”编辑框中输入数字的时候,程序可以随时计算乘法的结果 (1) 初始化结果编辑框BOOL CMy9_6Dlg:OnInitDialog()CDialog:OnInitDi

14、alog();/ TODO: Add extra initialization hereUpdateData(TRUE);int i=m_A*m_B;m_Result.Format("%d", i);UpdateData(FALSE);return TRUE; (2)当编辑框中的内容发生改变时,会产生EN_CHANGE消息,需要为乘数与被乘数两个编辑框响应该消息 void CMy9_6Dlg:OnChangeEditMul1( ) UpdateData(TRUE);int i=m_A*m_B;m_Result.Format("%d", i);Update

15、Data(FALSE);void CMy9_6Dlg:OnChangeEditMul2( ) UpdateData(TRUE);int i=m_A*m_B;m_Result.Format("%d", i);UpdateData(FALSE);(3) 响应Reset按钮的消息 void CMy9_6Dlg:OnReset() m_A = 0;m_B = 0;int i=m_A*m_B;m_Result.Format("%d", i);UpdateData(FALSE); 2. 编写可以在用户区中绘制一个矩形的应用程序,在按下鼠标左键后,这个矩形会把它的左上

16、角移动到鼠标位置;而当按下Shift键的同时,按下鼠标左键,则矩形恢复原位置(1) void CStestView:OnDraw(CDC* pDC)CStestDoc* pDoc = GetDocument();ASSERT_VALID(pDoc); pDC->Rectangle(m_rectRec);(2) void CStestView:OnLButtonDown(UINT nFlags, CPoint point) if( nFlags= MK_LBUTTON ) m_bKey=TRUE; m_rectRec.top= point.y; m_rectRec.right = poin

17、t.x+80; m_rectRec.left = point.x; m_rectRec.bottom = point.y+80; if( nFlags= MK_LBUTTON+MK_SHIFT) m_bKey=TRUE; m_rectRec.top= 102; m_rectRec.right = 438; m_rectRec.bottom =182; m_rectRec.left = 358; Invalidate(true);CView:OnLButtonDown(nFlags, point);3. 编写一个windows应用程序,要求在窗口的用户区中绘制一个圆,当单击鼠标左键时,该圆放大,

18、单击右键时,该圆缩小,按下Ctrl键的同时移动鼠标,则该圆会随鼠标的移动而移动。(1) void CStestView:OnDraw(CDC* pDC)CStestDoc* pDoc = GetDocument();ASSERT_VALID(pDoc); pDC->Ellipse(m_rectRec);(2)void CStestView:OnLButtonDown(UINT nFlags, CPoint point) if( nFlags= MK_LBUTTON ) m_bKey=TRUE; m_rectRec.top -= 25; m_rectRec.right += 25; m_rectRec.bottom +=25; m_rectRec.left

温馨提示

  • 1. 本站所有资源如无特殊说明,都需要本地电脑安装OFFICE2007和PDF阅读器。图纸软件为CAD,CAXA,PROE,UG,SolidWorks等.压缩文件请下载最新的WinRAR软件解压。
  • 2. 本站的文档不包含任何第三方提供的附件图纸等,如果需要附件,请联系上传者。文件的所有权益归上传用户所有。
  • 3. 本站RAR压缩包中若带图纸,网页内容里面会有图纸预览,若没有图纸预览就没有图纸。
  • 4. 未经权益所有人同意不得将文件中的内容挪作商业或盈利用途。
  • 5. 人人文库网仅提供信息存储空间,仅对用户上传内容的表现方式做保护处理,对用户上传分享的文档内容本身不做任何修改或编辑,并不能对任何下载内容负责。
  • 6. 下载文件中如有侵权或不适当内容,请与我们联系,我们立即纠正。
  • 7. 本站不保证下载资源的准确性、安全性和完整性, 同时也不承担用户因使用这些下载资源对自己和他人造成任何形式的伤害或损失。

评论

0/150

提交评论