【精品IT教程】Windows系统开发教程最完整版.ppt
上传人:sy****28 上传时间:2024-09-14 格式:PPT 页数:426 大小:13.6MB 金币:16 举报 版权申诉
预览加载中,请您耐心等待几秒...

【精品IT教程】Windows系统开发教程最完整版.ppt

【精品IT教程】Windows系统开发教程最完整版.ppt

预览

免费试读已结束,剩余 416 页请下载文档后查看

16 金币

下载此文档

如果您无法下载资料,请参考说明:

1、部分资料下载需要金币,请确保您的账户上有足够的金币

2、已购买过的文档,再次下载不重复扣费

3、资料包下载后请先用软件解压,在使用对应软件打开

Windows系统开发Windows运行机制Windows运行机制注:操作系统所能够完成的每一个功能都有一个函数与其对应,也就是说,操作系统把它能够完成的功能以函数的形式提供给应用程序使用,这些函数的集合就是Windows操作系统提供给应用程序的编程接口(ApplicationProgrammingInterface),简称WindowsAPI。例如:CreateWindow():创建一个窗口应用程序操作系统VisualC++开发环境ActiveX控件VisualC++的编程方式1、VisualC++开发环境File→New…2、MFC应用程序框架应用程序类型数据库支持没有,不需要容器:例如,在Word中运行Excel程序,Word相对与Excel就是容器微型服务器:例如,在Excel中的一些资源,其它程序可以调用,Excel就是服务器完整服务器容器和服务器自动:例如在Word和Excel中都支持VB,可以在Word和Excel中用VB(确切的说叫VBA)编程,而VC则不支持,要使VC支持,则要选中自动ActiveX:第三方控件,与开发平台无关选中相关项后,在左端会有图例显示风格源代码备注:例提示客户代码的书写位置作为共享的DLL:运行时才添加mfc库缺点:在没有安装VC的机器上不能运行解决办法:将vc下相关的DLL文件拷贝到Windows文件夹中作为静态的DLL:编译时所有用到的库都被链接。缺点:程序较大ChelloView:视类,可选择基类,用来显示文档数据并和用户交互如果在第五步中选择MFC风格,则基类为CView类,若选择资源管理器风格,则为CListView类例如,设计字处理软件,则要选择CEditView类ChelloDoc:文档类,用于管理文档数据CMainFrame:框架类,用来产生应用程序的主框架窗口ChelloApp:应用程序类,用来管理应用程序实例,放入口函数在vc中将数据显示和数据本身分开文档:数据,CDocument作用:数据存储,加载等视图:显示,CView作用:数据显示,修改等VC++的项目工作区窗口运行关键代码说明#include“helloView.h”构造函数:变量初始化析构函数PreCreateWindow():在窗口创建之前要做的工作OnDraw(CDC*pDC)CExamDoc*pDoc=GetDocument();获取文档的地址放在pDoc中,要使用文档中的数据则可以使用pDoc→例如,文档中的x,则使用pDoc→x获取值ASSERT_VALID(pDoc);宏定义,确保上条语句的结果有效CDCDC:DeviceContext,即设备上下文或设备描述表或设备环境引入原因:Windows不容许用户直接操作硬件,所以定义了一个抽象层DC,所有与绘图或显示相关操作封装在CDC类中,要访问显示设备就必须使用CDC类中提供的函数CDC*pDCCDC:封装了所有的绘制和打印函数pDC为指向CDC类的指针,可以使用pDC访问CDC类中的函数(pDC->)OnDraw函数被调用的情况:程序运行后自动调用窗口重绘之后,例如窗口的大小被改变、窗口被覆盖HelloWorld程序常用绘图函数常用绘图工具创建和载入绘图工具自定义画笔自定义画刷练习voidCHelloView::OnDraw(CDC*pDC){pDC->TextOut(200,50,"基本图形");CPenpen1(PS_DOT,1,RGB(255,0,0));pDC->SelectObject(pen1);pDC->MoveTo(30,100);pDC->LineTo(200,100);CPenpen2(PS_DOT,3,RGB(255,0,0));pDC->SelectObject(pen2);pDC->Rectangle(300,100,400,200);pDC->SelectStockObject(GRAY_BRUSH);pDC->Ellipse(300,100,400,200);CBrushbrush(HS_CROSS,RGB(0,0,255));pDC->SelectObject(&brush);pDC->Ellipse(450,100,600,200);}文本3、基本事件处理常用鼠标消息:voidCHelloView::OnLButtonDown(UINTnFlags,CPointpoint){CClientDCdc(this);dc.SelectStockObject(GRAY_BRUSH);dc.Ellipse(100,100,300,200);}练习1练习2击键与消息的关系常用的