mfc考试简要

上传人:小** 文档编号:89125518 上传时间:2019-05-18 格式:DOC 页数:65 大小:480KB
返回 下载 相关 举报
mfc考试简要_第1页
第1页 / 共65页
mfc考试简要_第2页
第2页 / 共65页
mfc考试简要_第3页
第3页 / 共65页
mfc考试简要_第4页
第4页 / 共65页
mfc考试简要_第5页
第5页 / 共65页
点击查看更多>>
资源描述

《mfc考试简要》由会员分享,可在线阅读,更多相关《mfc考试简要(65页珍藏版)》请在金锄头文库上搜索。

1、第1章 绪论l 图形用户界面(GUI=Graphical User Interface)的概念、组成与优点GUI的概念:Graphical User Interface=图形用户界面,是计算机的一种人机接口。组成:由图形显示设备(屏幕)和指示跟踪设备(鼠标、跟踪球、光笔/手写笔、触摸屏)组成,用户可通过指示设备来操作图形设备上的界面元素(窗口、菜单、对话框、图标)以完成各种工作。优点:与DOS等基于命令行的字符界面的OS相比,GUI形象直观、使用方便、人性化,不需记忆各种命令和参数,各种应用软件之基本功能的操作一致或相似。有大量API供程序员调用,图形界面的编程相对DOS要简单。l Windo

2、ws的特点、GDI的概念与特点Windows的主要特点有:面向对象、消息/事件驱动、多任务、图形设备接口GDI与设备无关。GDI概念:Graphics Device Interface与设备无关的图像设备接口。特点:应用程序可使用同一函数,可在不同的打印机和显示器上输出同一个图形。l Windows编程的特点1面向对象的编程思想2消息/事件驱动的程序结构3资源共享与数据交换4与设备无关GDI编程5.NETl Windows编程的语言工具选择n 小型/应用软件Visual Basicn 大型/系统软件Visual C+n 通用/数据库软件Delphi (Pascal) / PowerBuilde

3、rn 网络/安全软件Javan Web/XML软件Java / Visual C#l Windows API编程的步骤、入口函数和程序结构SDK (Software Development Kit软件开发工具包) API(Application Program Interface 应用程序接口)步骤: 运行VS 创建新项目 编写源代码(也可以直接将已有的源文件加到项目中) 编译、连接并运行入口函数:int WINAPI WinMain( HINSTANCE hInstance, / handle to current instance HINSTANCE hPrevInstance, / ha

4、ndle to previous instanceLPSTR lpCmdLine, / pointer to command lineint nCmdShow / show state of window);窗口类结构:typedef struct _WNDCLASS UINT style; WNDPROC lpfnWndProc; int cbClsExtra; int cbWndExtra; HANDLE hInstance; HICON hIcon; HCURSOR hCursor; HBRUSH hbrBackground; LPCTSTR lpszMenuName; LPCTSTR

5、lpszClassName; WNDCLASS;l MFC的概念、特点与优势MFC的概念:Microsoft Foundation Class Library = 微软基础类库,是Windows API的C+类封装,用于VC的Windows编程。MFC封装了Windows SDK的结构、功能、应用程序框架等内部技术,屏蔽了重复繁琐的实现细节,简化了程序员的工作。l 主要的MFC类及其功能(1) 根类CObjectCObject类可提供下列基础服务:l 序列化(Serialization把对象存入文件/从文件中提取对象)支持l 在运行时的类信息(识别对象的类型)l 对象诊断信息输出l 与类组(c

6、ollection classes)的兼容性(2) 应用程序构架类(Application Architecture Classes)CCmdTarget(命令目标)类是MFC中所有可接收和响应消息对象类的基类,CWinApp、CDocument和CWnd都是从它派生的。l CWinApp(Windows应用程序)类是应用程序的入口主程序类(其中封装并隐藏了WinMain函数),负责初始化和运行应用程序。l CDocument(文档)类对应于用户文件,支持对文件的创建、装入和保存。l CWnd(窗口)类是所有窗口的基类。(3) 窗口类CWndCWnd类是从CCmdTarget类派生的窗口基类,

7、它封装了一个窗口句柄,定义了消息处理机制,并提供了操作窗口所必须的成员函数。(4) 图形绘制对象类CGdiObjectCGdiObject类(图形设备接口对象)提供大量GDI函数,可用于其各种派生类中,如:CPen(画笔)、CBrush(画刷)、CFont(字体)、CBitmap(位图)、CPalette(调色板)、CRng(绘图区域)(5) 设备上下文类CDC设备上下文(DC = Device-Context设备环境/设备描述表)是由GDI管理的数据结构,直接从CObject派生的CDC是DC的封装,保存着(显示/打印)设备的属性和绘图工具,并提供了多种简单图形的绘制函数。(6) 其他类直接

8、从CObject派生的常用类还有:CFile(文件)、CMenu(菜单)。不是从CObject派生的独立类中常用的有:CArchive(存档)、CPoint(点)、CRect(矩形)、CSize(尺寸)、CString(串)、CTime(时间)等l 最简单的MFC程序/ Hello.cpp#include / MFC头文件class CHelloApp : public CWinApp/ 应用程序类virtual BOOL InitInstance(); / 初始化实例虚函数;BOOL CHelloApp:InitInstance()/ 初始化应用程序实例的成员函数CFrameWnd *pFr

9、mWnd = new CFrameWnd(); / 创建框架窗口对象pFrmWnd-Create(NULL, LHello world!); / 创建框架窗口m_pMainWnd = pFrmWnd; / 将该框架窗口作为应用程序的主窗口pFrmWnd-ShowWindow(m_nCmdShow); / 显示主窗口return TRUE;CHelloApp theApp; / 唯一的CSHelloApp对象第2章 界面程序设计l Windows操作系统的基本界面元素Windows是一种具有GUI的操作系统,GUI包括:窗口、菜单、对话框和控件等基本界面元素,及MFC提供的工具栏和状态栏等组合控

10、件,还有键盘、鼠标等消息响应与事件驱动。l 菜单设计的一般步骤1:打开菜单编辑器2:编辑菜单3:联接菜单快捷键4:响应菜单项l 动态灰化/禁止/激活菜单项可用CMenu的成员函数UINT EnableMenuItem( UINT nIDEnableItem, UINT nEnable );来灰化/禁止/激活菜单项。其中l 参数nEnable可取值:MF_DISABLED、MF_ENABLED或MF_GRAYED,及与2)中类似的参数MF_BYCOMMAND或MF_BYPOSITIONl 参数nIDEnableItem的含义与取值同2)中的l 返回值:为调用此函数时菜单项的激活状态,可为MF_D

11、ISABLED、MF_ENABLED或MF_GRAYED。若指定的菜单项不存在,则返回0xFFFFFFFF(-1)afx_msg void OnUpdateNameLs(CCmdUI* pCmdUI);ON_UPDATE_COMMAND_UI(ID_NAME_LS, OnUpdateNameLs)void CStudentView:OnUpdateNameLs(CCmdUI* pCmdUI) pCmdUI-Enable(FALSE);pCmdUI-SetCheck(TRUE);(独立的)CCmdUI类的常用成员函数有:virtual void Enable( BOOL bOn = TRUE )

12、; / 禁止/激活virtual void SetCheck( int nCheck = 1 ); / 已选中/未选中virtual void SetText( LPCTSTR lpszText ); / 设置菜单项文本串l 工具条与状态条的概念、组成与功能工具条/栏(tool bar)和状态条/栏(status bar)是构建友好GUI程序的通用标准,但它们并不是Windows API的标准部件,而是由应用程序框架(MFC)增加的一类控件。工具条是CToolBar类的对象,状态条是CStatusBar类的对象,这两个类都是控制条(栏)CControlBar的派生类,而CControlBar类

13、又是从CWnd类派生的工具条由若干可分组的图形按钮组成,在应用程序中单击一个按钮后,会像菜单项和快捷键一样发送一个命令消息(一般对应于一个菜单项消息)。可以响应UI消息来改变按钮状态和图形。状态条既不接受用户输入,也不产生命令消息,只能显示提示/状态信息和其他文本串。状态条窗口由若干文本窗格(pane)组成,窗格分成两类:消息行窗格和状态指示窗格。若想在状态条中显示应用程序数据,则必须禁用标准的状态条。l 对话框的分类,各类对话框的特点 (1) 模式对话框与无模式对话框按工作方式不同,可将对话框分成两类:模式对话框(modal dialog box模态对话框):在关闭模式对话框之前,该程序不能

14、进行其他工作(如“打开文件”对话框)无模式对话框(modeless dialog box非模态对话框):模式对话框打开后,该程序仍然能够进行其他工作(如“查找与替换”对话框)(2) 公用对话框与用户对话框按编程方式不同,还可将Windows对话框分成两类:公用对话框(common dialog boxes通用/公共对话框):Windows提供的一组标准用户接口对话框,包括文件、颜色、字体、查找替换、页面设置、打印等对话框。公用对话框的资源与处理代码被封装在动态连接库文件comdlg32.dll中,该文件一般放在Windows系统安装目录下的system32子目录中,可供所有的Win32应用程序

15、调用。用户对话框(user dialog box):用户自己创建的对话框,对话框的资源与处理代码都由程序员自己来编写。l 创建和使用自定义用户模式对话框的主要步骤n 创建对话框资源:使用对话框编辑器创建对话框资源(如添加各种控件,调整控件的大小与位置,设置控件的ID与内容)n 创建对话框类:使用“MFC类向导”对话框创建CDialog的派生类,并将它与已经创建对话框资源ID相关联n 添加类变量:使用“添加成员变量向导”对话框向派生的对话框类中添加成员变量n 添加消息处理:使用“事件处理程序向导”为对话框中的(按钮和编辑框等可生成事件的)控件添加消息处理函数,编写处理代码n 初始化:在用户对话框类的OnInitDialog函数中,对对话框中的控件做初始化设置,主要是设置应用程序的各种输入和选择参数的初值n 接受用户输入:在用户对话框类的OnOK虚拟成员函数(用户按对话框中的“确定”钮IDOK退出对话

展开阅读全文
相关资源
相关搜索

当前位置:首页 > 商业/管理/HR > 管理学资料

电脑版 |金锄头文库版权所有
经营许可证:蜀ICP备13022795号 | 川公网安备 51140202000112号