




已阅读5页,还剩29页未读, 继续免费阅读
版权说明:本文档由用户提供并上传,收益归属内容提供方,若内容存在侵权,请进行举报或认领
文档简介
VisualC+开发基础,VisualC+是如何诞生的?C语言和C+语言是如何诞生的?C语言和C+语言究竟有什么关系?C语言、C+语言和Java语言、C#语言有什么关系?,几个与历史有关的问题,最适用的语言才是最好的语言,高级程序设计语言的发展历史,B.Stroustrup,J.Gosling,A.Hejlsberg,三个影响历史的关键人物,C语言来自与B语言,B语言是BCPL语言的简化,而BCPL语言又简化自CPL语言C语言的发明者是贝尔实验室的D.Ritchie1978年有了以Kvoidmain()strings;couts;coutd;coutsetw(20)setprecision(2)setiosflags(ios:fixed)dfoo(20);deleteno;,一个使用了静态存储、堆和栈的C+程序例子,什么是编译?什么是连接?为什么要编译和连接?,几个问题,C+代码的编译和连接,VisualC+来源于MicrosoftC/C+目前VisualC+的最新版本是VisualStudio.NET7.0中的VisualC+.NET7.0实际开发中常用到VisualStudio6.0中的VisualC+6.0(VisualStudio6.0最新的ServicePack版本是SP5)VisualC+中的用户界面和基本概念解决方案(Workspace)项目(Project)生成(Make)编译(Build)编译方式(BuildType/BuildConfiguration)项目设置(ProjectSetting):编译/连接/调试选项,VisualC+简介,演示VisualC+开发控制台程序的方法扼要演示VisualC+开发静态连接库的方法扼要演示VisualC+开发动态连接库的方法,用VisualC+开发控制台程序,WIN32GUI程序的要素进程线程窗口资源窗口类窗口属性窗口函数消息消息队列消息处理对话框,WIN32是基于DLL的运行环境kernel32.dlluser32.dllgdi32.dll演示MicrosoftDepends的用法,什么是WIN32环境?什么是GUI程序?,演示VisualC+资源编辑器的用法DIALOGICONMENUBITMAPSTRINGVERSION,消息:由一个消息ID,一个wParam(32位)参数和一个lParam(32位)参数组成typedefstructtagMSGmsgHWNDhwnd;UINTmessage;WPARAMwParam;LPARAMlParam;DWORDtime;POINTpt;MSG;消息分类消息队列消息循环消息和线程的关系,WIN32窗口系统的核心:消息管理,演示MicrosoftSpy+的用法ProcessesListThreadsListWindowsListWindowClassPropertiesMessageLogging,基本的WIN32程序包含两个主要函数,WinMain和WndProc:WinMain函数注册窗口类创建窗口显示窗口消息循环WndProc回调函数处理消息未处理消息传给DefWindowProc,开发一个简单的WIN32窗口程序,主消息循环代码的写法while(GetMessage(,#includeWinMain()/Instance/WNDCLASS;/CreateWindow();/MainMessageLoopWndProc()/switch()/WM_CREATE/WM_PAINT/WM_SIZE/WM_CLOSE/WM_DESTROY,DeviceContextPaintDCMemoryDCGDIObject:PenBrushDrawingFunctions:,开发一个简单的WIN32窗口程序,UserInputsMouseEventsKeyboardEventsFocus,ChildWindows在WM_CREATE消息中创建子窗口创建一个包含图形元素的子窗口创建一个按钮子窗口WM_SIZE的处理WM_PAINT的处理WM_CLOSE的处理WM_DESTROY的处理,WIN32ControlsStaticEditButtonRadioButtonCheckBoxListComboBoxProgressScollBars,开发一个简单的WIN32窗口程序,#includeWinMain()/DialogBox();DialogProc()/switch()/WM_INITDIALOG/EndDialog();,Dialog模式对话框无模式对话框,开发一个简单的WIN32对话框程序,MFC是Microsoft提供的类库,包含了以下功能用户界面开发(对话框,单窗口和多窗口)基本文件I/O数据库开发网络编程(TCP/IP,FTP,Internet)OLE支持(OLE容器,客户端,复合文档)ActiveX支持(用户控件、自动化对象)容器类(数据结构、基本算法)调试、跟踪、测试支持,什么是MFC?,MFC的类结构:CObject是其中最基本的类,向导生成的是源代码的框架,MFC的应用程序向导,使用VisualC+提供的ClassWizard工具(该工具的使用方式在VisualStudio.NET中略有变化)在ClassWizard中添加消息处理过程在ClassWizard中添加新类使用VisualC+提供的类视图工具,使用MFC开发对话框程序,演示ClassWizard的用法新建类添加类成员类的继承关系多态、重载的实现消息处理控件-变量对应关系,CWinApp类CDialog类CFrameWnd类虚函数的作用:重新实现CDialog或CWnd的特性消息循环在MFC中的实现:BEGIN_MESSAGE_MAP(CTttDlg,CDialog)/AFX_MSG_MAP(CTttDlg)ON_WM_SYSCOMMAND()ON_WM_PAINT()ON_WM_QUERYDRAGICON()ON_EN_CHANGE(IDC_EDIT1,OnChangeEdit1)/AFX_MSG_MAPEND_MESSAGE_MAP(),理解MFC生成的框架代码的结构,VisualC+的文档-视结构,使用MFC开发窗口程序,VisualC+的文档-视结构4个关键类:CDocTemplate、CDocument、CFrameWnd、CViewCSingleDocTemplate*pDocTemplate;pDocTemplate=newCSingleDocTemplate(IDR_MAINFRAME,RUNTIME_CLASS(CTttDoc),RUNTIME_CLASS(CMainFrame),RUNTIME_CLASS(CTttView);AddDocTemplate(pDocTemplate);CCommandLineInfocmdInfo;ParseCommandLine(cmdInfo);if(!ProcessShellCommand(cmdInfo)returnFALSE;,使用MFC开发窗口程序,MFC下图形对象、控件的用法,OnDraw()使用CPaintDC和CDCCPenCBrushCFont,CMenuCButtonCProgressCtrlCListBoxCListView/CListCtrlCTreeView/CTreeCtrl,管理文档-视结构,CDoucment:OnNewDocument()OnOpenDocument()Serialize()UpdateAllViews()IsModified()SetModifiedFlag(),CView:PreCreateWindow()OnDraw()GetDocument()OnUpdate(),CFrameWnd:GetActiveFrame()GetActiveView()GetActiveDocument()LoadFrame(),使用VisualC+开发数据库访问程序,访问数据库的不同方式数据库软件本身的接口API嵌入式C语言代码ODBCDAORDOADO(面向对象的ODBC).NET类库中的数据库访问模块VisualC+中支持ODBC的类是CDatabase系列支持DAO的是CDaoDatabase系列支持ADO的办法是使用ActiveX自动化对象,基于网络连接的数据库访问基础,数据库服务DatabaseServer,服务端交易环境(数据库脚本语言):存储过程/触发器/外部存储过程T-SQLinSQLServer,PL/SQLinOracle,操作系统OS,服务端通信模块,客户端通信模块,公共数据库接口ODBC,ADO,特定数据库接口DBLibraryinSQLServer,ProC/OCIinOracle,应用程序开发接口MFC,VBControls,应用程序,网络连接,网络通信技术概览,基于消息的通信技术UDP、TCP、COM、NamedPipes消息队列:MQ基于成熟应用协议的通信技术FTPMailHttp(WebAccess)基于远程过
温馨提示
- 1. 本站所有资源如无特殊说明,都需要本地电脑安装OFFICE2007和PDF阅读器。图纸软件为CAD,CAXA,PROE,UG,SolidWorks等.压缩文件请下载最新的WinRAR软件解压。
- 2. 本站的文档不包含任何第三方提供的附件图纸等,如果需要附件,请联系上传者。文件的所有权益归上传用户所有。
- 3. 本站RAR压缩包中若带图纸,网页内容里面会有图纸预览,若没有图纸预览就没有图纸。
- 4. 未经权益所有人同意不得将文件中的内容挪作商业或盈利用途。
- 5. 人人文库网仅提供信息存储空间,仅对用户上传内容的表现方式做保护处理,对用户上传分享的文档内容本身不做任何修改或编辑,并不能对任何下载内容负责。
- 6. 下载文件中如有侵权或不适当内容,请与我们联系,我们立即纠正。
- 7. 本站不保证下载资源的准确性、安全性和完整性, 同时也不承担用户因使用这些下载资源对自己和他人造成任何形式的伤害或损失。
最新文档
- 软件技术员考试应试能力训练试题及答案
- 高考数学人物访谈及试题及答案
- 自我反思与生活的启示-高考作文考试试题及答案
- 法学概论的历史发展脉络及试题与答案
- 商铺委托转租协议
- 2025年网络安全评估标准试题及答案
- 基于云计算的仓库管理新模式计划
- 学术活动组织与实施方案计划
- 2025年软考软件设计师答题技巧试题及答案
- 软考网络标准化知识试题及答案
- 2025年河南省洛阳市中考数学一模试卷
- 2025年武汉铁路局集团招聘(180人)笔试参考题库附带答案详解
- 信息安全管理员-初级工练习题(附答案)
- 深圳学位锁定合同协议
- 2025全国不动产登记代理人《不动产登记代理实务》考试真题(附完整解析)
- 农产品供应链应急保障措施
- 食品原料报废管理制度
- 2025年高级政工师理论考试题库(浓缩500题)
- 乡村振兴学习课件
- 2025年施工现场质量员继续教育考试题库(继续教育)含答案
- 饲料企业安全生产工作计划
评论
0/150
提交评论