可视化程序设计入门.ppt
《可视化程序设计入门.ppt》由会员分享,可在线阅读,更多相关《可视化程序设计入门.ppt(96页珍藏版)》请在三一办公上搜索。
1、可视化程序设计,Windows应用程序的基本特点和概念,使用向导建立应用程序,资源编辑器,常用控件,使用图形用户界面 使用面向对象的方法编程 基于消息驱动的程序设计,Windows应用程序的基本特点,基本特点和概念,对话框 人机交互的接口 图形用户界面(GUI:graphical user interface),图形用户界面,基本特点和概念,对应用程序的理解:应用程序=代码+资源前台:图形化的窗口、对话框、位图等;后台:非图形化的类对象及其他代码;,面向对象编程方式,基本特点和概念,每个应用程序都可以看作一个类,运行时产生一个实例对象,每个实例对象有一个编号,称为“句柄”(HINSTANCE类
2、型)。操作系统必须依靠句柄识别对应的应用程序。程序的资源包括:位图、光标、对话框、图标、菜单等。每个资源对象都有一个ID,对应相应的类。,面向对象编程方式,基本特点和概念,控制台应用程序的执行依靠程序流程控制进行 windows应用程序中独立函数执行靠流程控制,整个程序中各个函数的跳转靠消息机制控制。消息机制是windows应用程序最重要的特征之一,消息与消息处理函数,基本特点和概念,事件:在windows操作系统环境中,系统或用户产生的动作消息:描述事件发生的信息事件驱动机制:由事件发出消息,由消息触发对应的代码执行操作消息到代码的关联,由VC+消息映射机制自动完成,消息与消息处理函数,基本
3、特点和概念,Microsoft Foundation Class 微软基础类库主要用于开发windows应用程序是个类的层次结构,大部分由基类CObject类派生出来,MFC类库,基本特点和概念,1、生成标准程序结构:单文档、多文档、对话框等。2、设计图形用户界面,添加控件3、建立对象的事件驱动程序,编写相关代码4、编译、链接、运行,使用向导建立应用程序,使用向导建立应用程序,使用向导建立应用程序的步骤:,设计一个可视化应用程序,可以计算圆的面积和周长。见案例calculator.,使用向导建立应用程序,1、用向导建立对话框,使用向导建立应用程序,使用向导建立应用程序,使用向导建立应用程序,使
4、用向导建立应用程序,2、设计图形用户界面,使用向导建立应用程序,3、设计对象的事件驱动程序,使用向导建立应用程序,3.1 建立与控件对应的程序变量,使用向导建立应用程序,3.2 编写响应消息的类函数,使用向导建立应用程序,(1)对话框初始化函数,BOOL CCalculatorDlg:OnInitDialog()CDialog:OnInitDialog();/Set the icon for this dialog.The framework does this automatically/when the applications main window is not a dialogSet
5、Icon(m_hIcon,TRUE);/Set big iconSetIcon(m_hIcon,FALSE);/Set small icon/TODO:Add extra initialization herem_radius=0;m_girth=0.00;m_area=0.00;UpdateData(false);return TRUE;/return TRUE unless you set the focus to a control,使用向导建立应用程序,(2)单击“确定”按钮的响应函数,使用向导建立应用程序,void CCalculatorDlg:OnButton1()/TODO:Ad
6、d your control notification handler code hereUpdateData(true);double girth,area;girth=2*3.1415*m_radius;area=3.1415*m_radius*m_radius;m_girth.Format(%10.3f,girth);m_area.Format(%10.3f,area);UpdateData(false);,(2)单击“确定”按钮的响应函数,使用向导建立应用程序,(2)单击“清空”按钮的响应函数,void CCalculatorDlg:OnButton2()/TODO:Add your
7、control notification handler code herem_radius=0;m_girth=0.00;m_area=0.00;UpdateData(false);,(2)单击“清空”按钮的响应函数,使用向导建立应用程序,4、编译链接运行,使用向导建立应用程序,资源编辑器,可视化资源的编辑环境,资源编辑器,1、资源编辑器的基本操作,创建资源:插入菜单-资源查看和修改:双击、属性对话框资源符号:资源命名符号,与整数集对应。定义保存在头文件resource.h中。,资源编辑器,1、对话框编辑器(Dialog),功能:创建、编辑对话框,添加控件、调整布局、测试功能等 打开对话框编
8、辑器会同时出现控件工具栏和对话框调整工具栏。添加控件通过点击控件工具栏的对应按钮,在对话框中绘制。设置tab键的方法:通过“布局”菜单中的“Tab顺序”菜单激活该功能,顺次点击对应的控件来更改顺序。,见案例calculator。,资源编辑器,2、菜单编辑器(Menu),菜单多出现在单文档或多文档程序结构中 功能:创建菜单和菜单项,为菜单定义热键、快捷键和状态提示,可以定义属性和消息处理函数。,见案例TestMenu。该案例演示添加一个菜单项,该菜单项执行弹出对话框的操作。,操作过程:建立单文档添加菜单,给菜单命名添加对话框,给对话框建立类为菜单添加函数,函数中打开对话框,静态控件,void C
9、MainFrame:Ontm()/TODO:Add your command handler code hereTestDlg DlgObj;DlgObj.DoModal();,资源编辑器,3、快捷键编辑器(Accelerator),可以为菜单项定义快捷键 功能:添加、删除、修改、浏览项目所用快捷键查看和修改与快捷键表中每个条目有关的资源标识符为菜单项定义快捷键,见案例TestMenuAlt。该案例演示为上例的菜单项添加一个快捷键。,资源编辑器,4、串表编辑器(String Table),功能:显示、编辑应用程序中的所有对象ID、值和标题。,5、版本信息编辑器(Version),6、图形编辑器
10、(Icon),7、工具栏编辑器(Toolbar),功能:编辑和维护版本信息。,功能:编辑、绘制位图、图表和光标。,功能:创建工具栏资源。以图形方式显示需要处理的工具栏及已被选择的工具栏按钮图形。,见案例TestMenuAlt。,对话框中的常用控件,静态控件编辑框控件按钮控件列表框控件滚动条控件,所有控件都是从CWnd类派生出来,静态控件,1、静态控件,功能:显示文本、框、矩形、图标、位图和元文件只能用来输出信息,不能接收用户信息不能产生消息包含:静态文本控件:用于显示文本,caption属性值是要显示的内容。群组框控件:用于控件分组,使界面对象功能从视觉上区分开。图片控件:用于显示图形信息。t
11、ype是图片类型;image属性当图片类型是icon或bitmap时,用来指定资源的ID;color属性用来设置frame的边框颜色或rectangle的填充颜色。,见案例StaticControl。,操作过程:建立对话框添加群组框控件、图片控件和静态文本控件设置静态文本控件和群组框控件的标题导入位图设置图片控件类型为“位图类型”,与导入的位图关联,静态控件,编辑框控件,2、编辑框控件,功能:输入、编辑、修改文本内容、数据或口令,编辑框的属性:Align text(对齐方式)Multiline(是否可多行显示)Numbers(是否限制输入数字)Horizontal scroll(添加水平滚动条
12、)Vertical scroll(添加垂直滚动条)Auto HScroll(输入超过编辑框区域时自动向右滚动)Auto VScroll(输入回车超过编辑框区域时自动向下滚动一页)want return(允许回车)Password(屏蔽输入内容)Border(控件周围加边框)Uppercase(字母转换为大写)Lowercase(字母转换为小写)Read-only(只读),2、编辑框控件,编辑框控件的消息:EN_CHANGE:文本被修改,在显示文字后发送EN_UPDATE:文本被修改,在文本显示前发送EN_HSCROLL:水平滚动条被使用时,显示更新前发送EN_VSCROLL:垂直滚动条被使用是
13、,显示更新前发送消息EN_KILLFOCUS:当控件失去键盘输入焦点时发送EN_SETFOCUS:当控件得到键盘输入焦点时发送,基本操作:UpdateData(true):数据从编辑框控件向数据成员传递(对话框的公有成员函数)UpdateData(false):数据从数据成员向编辑框控件传递(对话框的公有成员函数)void SetPasswordChar(TCHAR ch):设置密码的替代字符(编辑框的公有成员函数),见案例EditControl。,编辑框控件,操作过程:建立对话框添加编辑框控件和静态文本框控件,并设置属性为控件添加相应的数据成员为消息添加相应的函数添加初始化代码,编辑框控件,
14、编辑框控件,编辑框控件,void CEditControlDlg:OnUpdateEdit1()/TODO:If this is a RICHEDIT control,the control will not/send this notification unless you override the CDialog:OnInitDialog()/function to send the EM_SETEVENTMASK message to the control/with the ENM_UPDATE flag ORed into the lParam mask./TODO:Add your
15、 control notification handler code herem_edit1=不能输入!;UpdateData(false);,编辑框控件,BOOL CEditControlDlg:OnInitDialog()CDialog:OnInitDialog();/Set the icon for this dialog.The framework does this automatically/when the applications main window is not a dialogSetIcon(m_hIcon,TRUE);/Set big iconSetIcon(m_hI
- 配套讲稿:
如PPT文件的首页显示word图标,表示该PPT已包含配套word讲稿。双击word图标可打开word文档。
- 特殊限制:
部分文档作品中含有的国旗、国徽等图片,仅作为作品整体效果示例展示,禁止商用。设计者仅对作品中独创性部分享有著作权。
- 关 键 词:
- 可视化 程序设计 入门
链接地址:https://www.31ppt.com/p-6251745.html