




已阅读5页,还剩49页未读, 继续免费阅读
版权说明:本文档由用户提供并上传,收益归属内容提供方,若内容存在侵权,请进行举报或认领
文档简介
第4章MFC基本应用程序的建立,4.1Windows编程基础4.2MFC4.3使用MFCAppWizard4.4使用ClassWizard和消息映射机制,第4章MFC基本应用程序的建立,4.1Windows编程基础4.2MFC4.3使用MFCAppWizard4.4使用ClassWizard和消息映射机制,4.1Windows编程基础(1of4),Windows应用程序的基本流程,如下图所示。,Windows应用程序的基本流程,4.1Windows编程基础(2of4),Windows编程的特点:消息驱动机制DOS程序是通过调用系统的函数来获得用户输入的,Windows程序则是通过操作系统发送的消息来处理用户输入的。无论是系统产生的动作或是运行应用程序产生的动作,都称为事件(Events)产生的消息(Message)。在应用程序中,通过接收消息、分发消息、处理消息来和用户进行交互。许多消息都经过了严格的定义,并且适用于所有的应用程序。图形设备接口(GDI)DOS环境中,由于操作系统与外部设备是紧密相连的,所以要在打印机上打印一幅图形是非常复杂的事情。Windows则提供了一个抽象的接口,称为图形设备接口(GraphicalDeviceInterface,简称GDI),使得用户直接利用系统的GDI函数就能方便实现输入或输出,而不必关心与系统相连的外部设备的类型。基于资源的程序设计Windows应用程序常常包含众多图形元素,每一个这样的元素都作为一种可以装入应用程序的资源来存放。这些资源可以被编辑、修改,也可以被其他应用程序所共享。VC中提供的许多编辑器能“所见即所得”地进行不同类型资源的设计、编辑等操作。,4.1Windows编程基础(3of4),动态链接库提供一些特定结构的函数,能被应用程序在运行过程中装入和连接,多个程序可以共享同一个动态链接库。从编程角度,动态链接库可以提高程序模块的灵活性,它本身是可以单独设计、编译和调试的。Windows提供了应用程序可利用的丰富的函数调用,大多数用于实现其用户界面和在显示器上显示的文本和图形,都是通过动态链接库来实现的。Windows中,KERNEL32用来处理存储器低层功能、任务和资源管理等核心服务;GDI32用来提供图形设备接口,管理用户界面和图形绘制;USER32负责窗口的管理。进程和线程Windows是一个32位多任务操作系统,采用进程和线程的管理模式。进程是装入内存中正在执行的应用程序。进程包括私有的虚拟地址空间、代码、数据及其它操作系统资源。进程包括了一个或多个在进程上下文内运行的线程。线程是操作系统分配CPU时间的基本实体。线程可以执行应用程序代码的任何部分,包括当前正在被其它线程执行的那些部分。同一进程的所有线程共享同样的虚拟地址空间、全局变量和操作系统资源。一个应用程序,包括一个或多个进程,每个进程由一个或多个线程构成。,4.1Windows编程基础(4of4),MFC的基本数据类型需要说明的是:这些基本数据类型都是以大写字符出现。,第4章MFC基本应用程序的建立,4.1Windows编程基础4.2MFC4.3使用MFCAppWizard4.4使用ClassWizard和消息映射机制,4.2MFC,4.2MFC概述1987年微软公司推出了第一代Windows产品,并为应用程序设计者提供了Win16API,在此基础上推出了WindowsGUI(图形用户界面),然后采用面向对象技术对API进行封装。1992年推出应用程序框架产品AFX(ApplicationFrameworks),并在AFX的基础上进一步发展为MFC产品。MFC类的基本层次结构如图。,第4章MFC基本应用程序的建立,4.1Windows编程基础4.2MFC4.3使用MFCAppWizard4.4使用ClassWizard和消息映射机制,4.3使用MFCAppWizard(1of24),4.3.1应用程序框架类型,4.3使用MFCAppWizard(2of24),4.3.2创建一个单文档应用程序开始选择“File”“New”,选择Projects标签;选择MFCAppWizard(exe)的项目类型(该类型用于创建可执行的Windows应用程序),将项目工作文件夹定位在“D:VisualC+6.0程序”,并在“ProjectName”框中输入项目名Ex_SDIHello,如图,单击OK。,图4.5MFCAppWizard的“New”对话框,4.3使用MFCAppWizard(3of24),第一步从应用程序类型SingleDocument、MultipleDocument和DialogBased中选择SDI。决定应用程序中是否需要MFC的“文档/视图”结构的支持。若不选定此项,则程序中的磁盘文件的打开、保存以及文档和视图的相互作用等功能需要用户来实现,且将跳过Step2Step5,直接弹出“Step6”对话框。选择资源所使用的语言,这里是“中文中国”,单击Next按钮。,图4.6SDI的“Step1”对话框,4.3使用MFCAppWizard(4of24),第二步单击Next按钮进入下一步。第三步单击Next按钮进入下一步。,图4.7SDI的“Step2”对话框,图4.8SDI的“Step3”对话框,4.3使用MFCAppWizard(5of24),第四步单击Next按钮进入下一步。,图4.9SDI的“Step4”对话框,4.3使用MFCAppWizard(6of24),第五步在弹出的对话框(如图)中出现三个方面的选项,供用户来选择:应用程序的主窗口是MFC标准风格还是窗口左边有切分窗口的浏览器风格;在源文件中是否加入注释用来引导用户编写程序代码;使用动态链接库还是静态链接库。通常,保留缺省状态,单击Next按钮进行下一步。,图4.10SDI的“Step5”对话框,4.3使用MFCAppWizard(7of24),第六步单击Finish按钮出现如图4.12所示的对话框。,图4.11SDI的“Step6”对话框,图4.12项目信息对话框,4.3使用MFCAppWizard(8of24),编译并运行,4.3使用MFCAppWizard(9of24),4.3.3理解程序框架应用类CEx_SDIHelloApp下面首先来看看Ex_SDIHello应用程序的Ex_SDIHello.h文件:.classCEx_SDIHelloApp:publicCWinApppublic:CEx_SDIHelloApp();/AFX_VIRTUAL(CEx_SDIHelloApp)public:virtualBOOLInitInstance();/AFX_VIRTUAL/Implementation(实现)/AFX_MSG(CEx_SDIHelloApp)afx_msgvoidOnAppAbout();/NOTE-theClassWizardwilladdandremovememberfunctionshere./DONOTEDITwhatyouseeintheseblocksofgeneratedcode!/AFX_MSGDECLARE_MESSAGE_MAP()/声明消息映射;.,4.3使用MFCAppWizard(10of24),代码中:/AFX_VIRTUAL(类名)./AFX_VIRTUAL是ClassWizard定义的专门用作虚函数重载的标记。同样:/AFX_MSG(类名)./AFX_MSG是ClassWizard定义的专门用作消息映射声明的标记。代码中的“/TODO:”以及其他英文注释是由MFCAppWizard为用户自动生成的。若不需要这些注释,可在应用程序向导的第五步对话框中,将“Wouldyouliketogeneratesourcefilecomments?”项选为“No,thankyou”。,4.3使用MFCAppWizard(10of24),下面再来看看该Ex_SDIHello应用程序的Ex_SDIHello.cpp源文件:#includestdafx.h/预编译处理的头文件#includeEx_SDIHello.h/应用类的头文件#includeMainFrm.h/主框架类的头文件#includeEx_SDIHelloDoc.h/文档类的头文件#includeEx_SDIHelloView.h/视图类的头文件,4.3使用MFCAppWizard(11of24),/消息映射开始BEGIN_MESSAGE_MAP(CEx_SDIHelloApp,CWinApp)/消息映射宏/AFX_MSG_MAP(CEx_SDIHelloApp)/映射“帮助”菜单项中的“关于Ex_SDIHello”命令消息,当用户选择了/该命令时,将执行函数OnAppAboutON_COMMAND(ID_APP_ABOUT,OnAppAbout)/NOTE-theClassWizardwilladdandremovemappingmacroshere./DONOTEDITwhatyouseeintheseblocksofgeneratedcode!/AFX_MSG_MAP/映射“文件”菜单项中的“新建”和“打开”命令消息,当用户选择了“新建”/或“打开”命令时,将相应执行CWinApp:OnFileNew或CWinApp:OnFileOpenON_COMMAND(ID_FILE_NEW,CWinApp:OnFileNew)ON_COMMAND(ID_FILE_OPEN,CWinApp:OnFileOpen)/映射“文件”菜单项中的“打印设置”命令消息,当用户选择了/该命令时,将执行函数CWinApp:OnFilePrintSetupON_COMMAND(ID_FILE_PRINT_SETUP,CWinApp:OnFilePrintSetup)END_MESSAGE_MAP()/消息映射宏/消息映射结束,4.3使用MFCAppWizard(12of24),CEx_SDIHelloApp:CEx_SDIHelloApp()/构造函数CEx_SDIHelloApptheApp;/定义的一个应用类对象,表示一个实例BOOLCEx_SDIHelloApp:InitInstance().voidCEx_SDIHelloApp:OnAppAbout()CAboutDlgaboutDlg;/定义的CAboutDlg对象aboutDlg.DoModal();/调用相应的库函数,显示CAboutDlg对话框,4.3使用MFCAppWizard(12of24),代码中:/AFX_MSG_MAP(类名)/AFX_MSG_MAP是ClassWizard定义的专门用作消息映射的标记。,4.3使用MFCAppWizard(13of24),最主要的InitInstance函数体代码:BOOLCEx_SDIHelloApp:InitInstance()/若用户在MFCAppWizard的第三步中,选中了“ActiveXControls”,/则表示所创建的应用程序支持ActiveX控件AfxEnableControlContainer();/若用户在MFCAppWizard的第四步中,选中了“3Dcontrols”/则表示所创建的应用程序支持Windows95版本前的3D控件风格#ifdef_AFXDLLEnable3dControls();/使用动态的3D控件#elseEnable3dControlsStatic();/使用静态的3D控件#endif/在系统注册表中登记应用程序的主键值,以便将一些与应用程序/相关的参数存放在该主键值下SetRegistryKey(_T(LocalMFCAppWizard-GeneratedApplications);/从注册表中调入应用程序的一些标准参数值.LoadStdProfileSettings();,4.3使用MFCAppWizard(14of24),/若用户在MFCAppWizard的第一步中,选择了“Singledocument”类型,/则进行下列的单文档模板的创建及其初始化操作。CSingleDocTemplate*pDocTemplate;/定义一个单文档模板指针变量pDocTemplate=newCSingleDocTemplate(/登记并创建单文档应用程序模板IDR_MAINFRAME,/菜单、快捷键等的资源标识号RUNTIME_CLASS(CEx_SDIHelloDoc),/文档类RUNTIME_CLASS(CMainFrame),/主框架窗口类RUNTIME_CLASS(CEx_SDIHelloView);/视图类AddDocTemplate(pDocTemplate);/向应用程序添加文档模板/分列命令行标准命令如DDE、文件打开等CCommandLineInfocmdInfo;ParseCommandLine(cmdInfo);/传送命令行指定的命令,并执行相应的操作if(!ProcessShellCommand(cmdInfo)returnFALSE;/对主框架窗口进行初始化以便显示和更新m_pMainWnd-ShowWindow(SW_SHOW);m_pMainWnd-UpdateWindow();returnTRUE;,4.3使用MFCAppWizard(15of24),CSingleDocTemplate是一个单文档模板类,将用户应用程序项目中的资源、主框架窗口类、文档类以及视图类建立了联系。AddDocTemplate负责将这些联系嵌入应用程序中。类似的,还有用于多文档应用程序的多文档模板类CMultiDocTemplate,但与单文档不同的是,多文档模板可以创建多个视、多个文档。很多程序都需要从命令行输入参数,它是通过ParseCommandLine函数保存在由CCommandLineInfo类定义的对象中,命令行最终的命令和参数是通过ProcessShellCommand执行的。与DOS命令行操作不同的是,Windows应用程序命令行参数是通过选择“开始”“运行”菜单命令,在弹出的运行对话框中指定的。,4.3使用MFCAppWizard(16of24),文档类CEx_SDIHelloDocCEx_SDIHelloDoc类的Ex_SDIHelloDoc.h文件:.classCEx_SDIHelloDoc:publicCDocumentprotected:CEx_SDIHelloDoc();/构造函数DECLARE_DYNCREATE(CEx_SDIHelloDoc).public:/AFX_VIRTUAL(CEx_SDIHelloDoc)public:virtualBOOLOnNewDocument();/当新建一个文档时,自动调用该函数virtualvoidSerialize(CArchive#endif.,4.3使用MFCAppWizard(17of24),/产生消息映射函数protected:/AFX_MSG(CEx_SDIHelloDoc)/NOTE-theClassWizardwilladdandremovememberfunctionshere./DONOTEDITwhatyouseeintheseblocksofgeneratedcode!/AFX_MSGDECLARE_MESSAGE_MAP();.用户的文档类CEx_SDIHelloDoc是从基类CDocument派生而来。,4.3使用MFCAppWizard(18of24),视图类CEx_SDIHelloViewCEx_SDIHelloView类的Ex_SDIHelloView.h文件:classCEx_SDIHelloView:publicCViewprotected:CEx_SDIHelloView();DECLARE_DYNCREATE(CEx_SDIHelloView)public:CEx_SDIHelloDoc*GetDocument();/用于返回文档类指针public:/AFX_VIRTUAL(CEx_SDIHelloView)public:virtualvoidOnDraw(CDC*pDC);/用于绘制的虚函数virtualBOOLPreCreateWindow(CREATESTRUCT/AFX_VIRTUAL,4.3使用MFCAppWizard(19of24),/Implementationpublic:virtualCEx_SDIHelloView();#ifdef_DEBUGvirtualvoidAssertValid()const;virtualvoidDump(CDumpContext#endif/CEx_SDIHelloView的成员函数GetDocument是用inline声明成一个内联函数。,4.3使用MFCAppWizard(20of24),CEx_SDIHelloView类的Ex_SDIHelloView.cpp文件:#includestdafx.h#includeEx_SDIHello.h#includeEx_SDIHelloDoc.h#includeEx_SDIHelloView.h.IMPLEMENT_DYNCREATE(CEx_SDIHelloView,CView)BEGIN_MESSAGE_MAP(CEx_SDIHelloView,CView)/AFX_MSG_MAP(CEx_SDIHelloView)/AFX_MSG_MAP/为“文件”菜单下的“打印.”和“打印预览”映射标准打印命令ON_COMMAND(ID_FILE_PRINT,CView:OnFilePrint)ON_COMMAND(ID_FILE_PRINT_DIRECT,CView:OnFilePrint)ON_COMMAND(ID_FILE_PRINT_PREVIEW,CView:OnFilePrintPreview)END_MESSAGE_MAP()CEx_SDIHelloView:CEx_SDIHelloView()CEx_SDIHelloView:CEx_SDIHelloView()BOOLCEx_SDIHelloView:PreCreateWindow(CREATESTRUCT,4.3使用MFCAppWizard(21of24),voidCEx_SDIHelloView:OnDraw(CDC*pDC)CEx_SDIHelloDoc*pDoc=GetDocument();ASSERT_VALID(pDoc);BOOLCEx_SDIHelloView:OnPreparePrinting(CPrintInfo*pInfo)/defaultpreparationreturnDoPreparePrinting(pInfo);voidCEx_SDIHelloView:OnBeginPrinting(CDC*/*pDC*/,CPrintInfo*/*pInfo*/)/TODO:addextrainitializationbeforeprintingvoidCEx_SDIHelloView:OnEndPrinting(CDC*/*pDC*/,CPrintInfo*/*pInfo*/)/TODO:addcleanupafterprinting,4.3使用MFCAppWizard(22of24),/以下是用于调试的函数#ifdef_DEBUGvoidCEx_SDIHelloView:AssertValid()constCView:AssertValid();voidCEx_SDIHelloView:Dump(CDumpContext#endif/_DEBUG,4.3使用MFCAppWizard(23of24),视图类CEx_SDIHelloView是从基类CView派生而来的。说明:各种类型的输入都可以由视图来响应、处理,并且打印和打印预览也是在视图类中完成的。这种文档和视图的结合,称为“文档/视图结构”机制,是MFC应用程序框架的核心。OnDraw是个非常有用的虚函数,当应用程序中的窗口状态或大小发生改变时,系统均会调用此函数重新绘制文档窗口的客户区。用户可以将一些绘图有关的代码添加此函数中,能在视图中进行图形的绘制。例如,下面的代码:voidCEx_SDIHelloView:OnDraw(CDC*pDC)CEx_SDIHelloDoc*pDoc=GetDocument();ASSERT_VALID(pDoc);pDC-TextOut(100,100,Hello,World!);,4.3使用MFCAppWizard(24of24),MFC涉及到的机制有:文档/视图机制:使得用户的应用程序类、文档类、视图类以及框架类之间有机地结合在一起,是MFC最重要的一种机制。消息映射机制:是实现对各种不同消息的处理。数据映射机制:是实现对话框中变量与控件之间的数据交换和数据校验。实现文档/视图机制是通过MFC应用程序向导(AppWizard)自动完成的,而消息映射和数据映射机制则是通过MFC的ClassWizard来自动进行的。,第4章MFC基本应用程序的建立,4.1Windows编程基础4.2MFC4.3使用MFCAppWizard4.4使用ClassWizard和消息映射机制,4.4使用ClassWizard和消息映射机制(1of16),4.4.1ClassWizard概述:它是MFC的类向导打开MFC的ClassWizard的方法:(两种方法)选择“View”“ClassWizard”菜单或直接使用Ctrl+W快捷键。在源代码文件的文档编辑窗口中,右击鼠标,选择ClassWizard命令。当ClassWizard打开后,就会弹出如图的MFCClassWizard对话框。,图4.15MFCClassWiard对话框,4.4使用ClassWizard和消息映射机制(2of16),4.4.2消息和消息映射消息分类Windows应用程序中的消息主要有三种类型。窗口消息(Windowsmessage)主要指由WM_开头的消息,一般由窗口(框架)类和视图类对象来处理。窗口消息往往带有参数,以标志处理消息的方法。控件的通知消息(Controlnotifications)当控件的状态发生改变时,控件就会向其父窗口发送COMMAND通知消息。应用程序框架处理控件消息的方法和窗口消息相同,但按钮的BN_CLICKED通知消息除外,它的处理方法与命令消息相同。命令消息(Commandmessage)主要包括由用户交互对象(菜单、工具条的按钮、快捷键等)发送的COMMAND通知消息。命令消息的处理方式与其他两种消息不同,它能够被多种对象接收、处理,这些对象包括文档类、文档模板类、应用程序本身以及窗口和视类等;而窗口消息和控件的通知消息是由窗口对象接收并处理的,这里的窗口对象是指从CWnd中派生的类的对象,它包括CFrameWnd、CMDIFrameWnd、CMDIChildWnd、CView、CDialog以及从这些类派生的对象等。,4.4使用ClassWizard和消息映射机制(3of16),例如,为CEx_SDIHelloView添加WM_LBUTTOMDOWN的消息映射,则可按下列步骤进行:(1)按Ctrl+W快捷键打开MFCClassWizard对话框。(2)在Classname组合框中,将类名选定为CEx_SDIHelloView。(3)在ObjectIDs列表框中选定CEx_SDIHelloView,而在Messages列表中选定WM_LBUTTOMDOWN消息。(4)双击Messages列表中的WM_LBUTTOMDOWN消息或单击AddFunction按钮,都会在CEx_SDIHelloView类中添加该消息的映射函数OnLButtonDown,同时在Memberfuncions列表中显示这一消息映射函数和被映射的消息,如图。,4.4使用ClassWizard和消息映射机制(4of16),图4.16映射WM_LBUTTONDOWN消息,4.4使用ClassWizard和消息映射机制(5of16),(5)单击EditCode,转向文档窗口,定位到OnLButtonDown源代码处。(6)添加下列代码:voidCEx_SDIHelloView:OnLButtonDown(UINTnFlags,CPointpoint)/TODO:Addyourmessagehandlercodehereand/orcalldefaultMessageBox(你好,我的VisualC+世界!,问候,0);CView:OnLButtonDown(nFlags,point);(7)程序运行后,在窗口客户区左击,弹出一个消息对话框。,4.4使用ClassWizard和消息映射机制(6of16),查看CEx_SDIHelloView程序代码,可以发现:ClassWizard为WM_LBUTTOMDOWN的消息映射作了以下三个方面处理:(1)在头文件Ex_SDIHelloView.h中声明消息处理函数OnLButtonDown:protected:/AFX_MSG(CEx_SDIHelloView)afx_msgvoidOnLButtonDown(UINTnFlags,CPointpoint);/AFX_MSGDECLARE_MESSAGE_MAP(),4.4使用ClassWizard和消息映射机制(7of16),查看CEx_SDIHelloView程序代码,可以发现:ClassWizard为WM_LBUTTOMDOWN的消息映射作了以下三个方面处理:(2)在Ex_SDIHelloView.cpp源文件前面的消息映射入口处,添加映射宏:BEGIN_MESSAGE_MAP(CEx_SDIHelloView,CView)/消息映射开始/AFX_MSG_MAP(CEx_SDIHelloView)ON_WM_LBUTTONDOWN()/AFX_MSG_MAPEND_MESSAGE_MAP()/消息映射结束,4.4使用ClassWizard和消息映射机制(8of16),查看CEx_SDIHelloView程序代码,可以发现:ClassWizard为WM_LBUTTOMDOWN的消息映射作了以下三个方面处理:(3)在Ex_SDIHelloView.cpp文件中写入一个空的消息处理函数的模板,框架:voidCEx_SDIHelloView:OnLButtonDown(UINTnFlags,CPointpoint)/TODO:Addyourmessagehandlercodehereand/orcalldefaultCView:OnLButtonDown(nFlags,point);可以在该函数中填入一些代码,以完成特定的功能。,4.4使用ClassWizard和消息映射机制(9of16),鼠标和键盘消息各自都有相应的消息处理宏和预定义消息处理函数,因此消息映射函数名称不再需要用户重新定义。对于菜单和按钮等命令消息来说,用ClassWizard映射时会弹出一个对话框,用来指定消息映射函数的名称。若指定的消息映射函数需要删除,则需要先在ClassWizard对话框的Messages列表中选定要删除的消息映射函数,然后单击DeleteFunction按钮,最后关闭ClassWizard对话框,并在该消息映射函数所在的类实现文件(.cpp)中将映射函数定义的代码全部删除。,4.4使用ClassWizard和消息映射机制(10of16),键盘和鼠标消息按下键盘上的一个键时,将发出WM_KEYDOWN消息;当放开键盘上的一个键时,则会发出WM_KEYUP消息。对于字符键,还会产生WM_CHAR消息。ClassWizard能为某个类添加WM_KEYDOWN和WM_KEYUP击键消息处理函数,它们的原型如下:afx_msgvoidOnKeyDown(UINTnChar,UINTnRepCnt,UINTnFlags);afx_msgvoidOnKeyUp(UINTnChar,UINTnRepCnt,UINTnFlags);其中:afx_msg是MFC用于定义消息函数的标志,参数nChar表示虚拟键代码,nRepCnt表示当用户按住一个键时的重复计数,nFlags表示击键消息标志。,4.4使用ClassWizard和消息映射机制(11of16),键盘和鼠标消息按下键盘上的一个键时,将发出WM_KEYDOWN消息;当放开键盘上的一个键时,则会发出WM_KEYUP消息。对于字符键,还会产生WM_CHAR消息。ClassWizard也能为某个类添加WM_CHAR消息处理函数的原型如下:afx_msgvoidOnChar(UINTnChar,UINTnRepCnt,UINTnFlags);其中:nChar表示键的ASCII码,nRepCnt表示当用户按住一个键时的重复计数,nFlags表示字符消息标志。,4.4使用ClassWizard和消息映射机制(12of16),对鼠标进行操作时也会产生对应的消息。通常,键盘发出的消息只会发送给具有输入焦点的窗口,但鼠标消息不受这种限制。例如:当鼠标移过窗口的客户区时,就会向该窗口发送WM_MOUSEMOVE(移动鼠标)消息。这里的客户区是指窗口中用于输出文档的区域。在窗口的客户区中按下或释放一个鼠标键时,还会产生如
温馨提示
- 1. 本站所有资源如无特殊说明,都需要本地电脑安装OFFICE2007和PDF阅读器。图纸软件为CAD,CAXA,PROE,UG,SolidWorks等.压缩文件请下载最新的WinRAR软件解压。
- 2. 本站的文档不包含任何第三方提供的附件图纸等,如果需要附件,请联系上传者。文件的所有权益归上传用户所有。
- 3. 本站RAR压缩包中若带图纸,网页内容里面会有图纸预览,若没有图纸预览就没有图纸。
- 4. 未经权益所有人同意不得将文件中的内容挪作商业或盈利用途。
- 5. 人人文库网仅提供信息存储空间,仅对用户上传内容的表现方式做保护处理,对用户上传分享的文档内容本身不做任何修改或编辑,并不能对任何下载内容负责。
- 6. 下载文件中如有侵权或不适当内容,请与我们联系,我们立即纠正。
- 7. 本站不保证下载资源的准确性、安全性和完整性, 同时也不承担用户因使用这些下载资源对自己和他人造成任何形式的伤害或损失。
最新文档
- 高二阶段英语试卷及答案
- 2025年汽车底盘模块试卷及答案
- 法规安全培训答卷课件
- 2025年宝鸡市新农村试卷及答案
- 安全生产学规矩培训试题及答案解析
- 法律课件内容
- 2025年互联网广告精准投放算法效果评估与社交媒体营销报告
- 2025年土葬采样试题及答案
- 今年从业资格证考试题及答案解析
- 聚焦2025年:新能源工业互联网在能源行业智慧健康中的应用报告
- 山体滑坡事故应急处理模版课件
- 体检中心投诉处理流程
- 银行解冻申请书
- 基于学科核心素养下的教学设计
- 人教版英语七年级(全册)单词表
- 全心衰竭的治疗与护理
- 扩张型心肌病治疗及护理
- 2002版干部履历表(贵州省)
- DL∕T 1396-2014 水电建设项目文件收集与档案整 理规范
- 行路难课件8省公开课一等奖新名师比赛一等奖课件
- 防欺凌隐患排查和矛盾化解记录表
评论
0/150
提交评论