多视图开发实例讲解
- 格式:doc
- 大小:77.50 KB
- 文档页数:21
《Visual Basic开发实战1200例(第Ⅱ卷)》 光盘内容框架 本书附带光盘内容包括本书源程序、部分录像文件等内容。完整的光盘内容框架如图1所示。
图1 光盘内容框架图 如何使用本书源程序 1.开发及运行环境 本书源程序都是在Windows Server 2003下开发的,程序测试环境为Windows Server 2003。用户只有正确配置程序所需的运行环境以后,才可以使用本书中的源程序。软件开发平台如下: 操作系统:Windows Server 2003 数 据 库:SQL Server 2000、Access 2003 开发环境:Visual Basic 分 辨 率:最佳效果1024× 768
2.源程序使用方法 (1)使用本书中的源程序时,请将源程序文件夹下的所有文件拷贝到计算机硬盘上,并去掉所有文件的只读属性。 (2)在系统上安装Visual Basic 、Access 2003、SQL Server 2000数据库、SQL Server 2005数据库。 3.附加SQL Server 2000数据库 下面以MR\03\043\DataBase为例,讲解SQL Server 2000数据库的附加方法。 (1)将MR\03\043\DataBase文件夹下扩展名为.MDF和.LDF的两个文件拷贝到SQL Server 2000安装路径下的MSSQL/Data目录下。 (2)打开SQL Server 2000中的“企业管理器”,然后展开本地服务器,在“数据库”节点上单击鼠标右键,在弹出的快捷菜单中选择“所有任务”/“附加数据库”命令,如图2所示。
图2 选择“附加数据库”命令 (3)在弹出的“附加数据库”对话框中选择刚拷贝过去的数据库文件(.MDF文件),如图3所示。
图3 选择所要附加的数据库 (4)单击“确定”按钮,弹出如图4所示的提示框。 图4 系统提示 (5)单击“确定”按钮,完成附加数据库操作。
ExcelVBA编程实例(150例)主要内容和特点《ExcelVBA编程入门范例》主要是以一些基础而简短的VBA实例来对ExcelVBA中的常用对象及其属性和方法进行讲解,包括应用程序对象、窗口、工作簿、工作表、单元格和单元格区域、图表、数据透视表、形状、控件、菜单和工具栏、帮助助手、格式化操作、文件操作、以及常用方法和函数及技巧等方面的应用示例。
这些例子都比较基础,很容易理解,因而,很容易调试并得以实现,让您通过具体的实例来熟悉ExcelVBA编程。
■分16章共14个专题,以具体实例来对大多数常用的ExcelVBA对象进行讲解;■一般而言,每个实例都很简短,用来说明使用VBA实现Excel某一功能的操作;■各章内容主要是实例,即VBA代码,配以简短的说明,有些例子可能配以必要的图片,以便于理解;■您可以对这些实例进行扩充或组合,以实现您想要的功能或更复杂的操作。
VBE编辑器及VBA代码输入和调试的基本知识在学习这些实例的过程中,最好自已动手将它们输入到VBE编辑器中调试运行,来查看它们的结果。
当然,您可以偷赖,将它们复制/粘贴到代码编辑窗口后,进行调试运行。
下面,对VBE编辑器界面进行介绍,并对VBA代码输入和调试的基本知识进行简单的讲解。
激活VBE编辑器一般可以使用以下三种方式来打开VBE编辑器:■使用工作表菜单“工具——宏——Visual Basic编辑器”命令,如图00-01所示;■在Visual Basic工具栏上,按“Visual Basic编辑器”按钮,如图00-02所示;■按Alt+F11组合键。
图00-01:选择菜单“工具——宏——Visual Basic编辑器”命令来打开VBE 编辑器图00-02:选择Visual Basic工具栏上的“Visual Basic编辑器”命令按钮来打开VBE编辑器此外,您也可以使用下面三种方式打开VBE编辑器:■在任一工作表标签上单击鼠标右键,在弹出的菜单中选择“查看代码”,则可进入VBE编辑器访问该工作表的代码模块,如图00-03所示;■在工作簿窗口左上角的Excel图标上单击鼠标右键,在弹出的菜单中选择“查看代码”,则可进入VBE编辑器访问活动工作簿的ThisWorkbook代码模块,如图00-04所示;■选择菜单“工具——宏——宏”命令打开宏对话框,若该工作簿中有宏程序,则单击该对话框中的“编辑”按钮即可进行VBE编辑器代码模块,如图00-05所示。
第一讲 桌面GIS 应用程序框架的建立第二讲 菜单的添加及其实现第三讲 MapControl 与PageLayoutControl 同步第四讲 状态栏信息的添加与实现第五讲 鹰眼的实现第六讲 右键菜单添加与实现教程Bug 及优化方案1第七讲 图层符号选择器的实现1第七讲 图层符号选择器的实现2第八讲 属性数据表的查询显示本讲主要是使用MapControl 、PageLayoutControl 、ToolbarControl 、TOCControl 四个控件建立起基本的桌面GIS 应用程序框架。
最终成果预览如下:第一讲:桌面GIS 应用程序框架的建立1、新建项目启动VS2005,选择“文件|新建|项目”,在项目类型中选择Visual C#,再选择Windows 应用程序模板,输入名称“3sdnMap”,点击确定。
在解决方案管理器中将“Form1.cs”重命名为“3sdnMap.cs”,在设计视图中,选中窗体,将其属性中的“Text”改为“3sdnMap”。
2、添加控件选择工具箱中的“菜单和工具栏|MenuStrip”,将其拖入窗体。
选择工具箱中的“ArcGIS Windows Forms”节,将“ToolbarControl”控件拖入窗体,并将其属性中的Dock设置为Top。
选择工具箱中的“菜单和工具栏|StatusStrip”,将其拖入到窗体。
选择工具箱中的“容器|SplitContainer”容器拖入窗体,并将其属性中的Dock设置为Fill。
将TabControl控件拖入Panel1,将Alignment属性设置为Bottom,Dock属性设置为Fill。
点击TabPages属性右边的按钮,弹出TabPage集合编辑器,将tabPage1的Name设置为tabPageLayer,Text设置为图层,将tabPage2的Name设置为tabPageProperty,Text设置为属性。
如下所示。
VS2010/MFC编程入门教程之目录第一部分:VS2010/MFC开发环境VS2010/MFC编程入门之前言VS2010/MFC编程入门之一(VS2010与MSDN安装过程图解)第二部分:VS2010-MFC应用程序框架VS2010/MFC编程入门之二(利用MFC向导生成单文档应用程序框架)VS2010/MFC编程入门之三(VS2010应用程序工程中文件的组成结构)VS2010/MFC编程入门之四(MFC应用程序框架分析)VS2010/MFC编程入门之五(MFC消息映射机制概述)第三部分:对话框VS2010/MFC编程入门之六(对话框:创建对话框模板和修改对话框属性)VS2010/MFC编程入门之七(对话框:为对话框添加控件)VS2010/MFC编程入门之八(对话框:创建对话框类和添加控件变量)VS2010/MFC编程入门之九(对话框:为控件添加消息处理函数)VS2010/MFC编程入门之十(对话框:设置对话框控件的Tab顺序)VS2010/MFC编程入门之十一(对话框:模态对话框及其弹出过程)VS2010/MFC编程入门之十二(对话框:非模态对话框的创建及显示)VS2010/MFC编程入门之十三(对话框:属性页对话框及相关类的介绍)VS2010/MFC编程入门之十四(对话框:向导对话框的创建及显示)VS2010/MFC编程入门之十五(对话框:一般属性页对话框的创建及显示)VS2010/MFC编程入门之十六(对话框:消息对话框)VS2010/MFC编程入门之十七(对话框:文件对话框)VS2010/MFC编程入门之十八(对话框:字体对话框)VS2010/MFC编程入门之十九(对话框:颜色对话框)第四部分:常用控件VS2010/MFC编程入门之二十(常用控件:静态文本框)VS2010/MFC编程入门之二十一(常用控件:编辑框Edit Control)VS2010/MFC编程入门之二十二(常用控件:按钮控件Button、Radio Button和Check Box)VS2010/MFC编程入门之二十三(常用控件:按钮控件的编程实例)VS2010/MFC编程入门之二十四(常用控件:列表框控件ListBox)VS2010/MFC编程入门之二十五(常用控件:组合框控件Combo Box)VS2010/MFC编程入门之二十六(常用控件:滚动条控件Scroll Bar)VS2010/MFC编程入门之二十七(常用控件:图片控件Picture Control)VS2010/MFC编程入门之二十八(常用控件:列表视图控件List Control 上)VS2010/MFC编程入门之二十九(常用控件:列表视图控件List Control 下)VS2010/MFC编程入门之三十(常用控件:树形控件Tree Control 上)VS2010/MFC编程入门之三十一(常用控件:树形控件Tree Control 下)VS2010/MFC编程入门之三十二(常用控件:标签控件Tab Control 上)VS2010/MFC编程入门之三十三(常用控件:标签控件Tab Control 下)第五部分:菜单、工具栏与状态栏VS2010/MFC编程入门之三十四(菜单:VS2010菜单资源详解)VS2010/MFC编程入门之三十五(菜单:菜单及CMenu类的使用)VS2010/MFC编程入门之三十六(工具栏:工具栏资源及CToolBar类)VS2010/MFC编程入门之三十七(工具栏:工具栏的创建、停靠与使用)VS2010/MFC编程入门之三十八(状态栏的使用详解)第六部分:文档、视图和框架VS2010/MFC编程入门之三十九(文档、视图和框架:概述)VS2010/MFC编程入门之四十(文档、视图和框架:各对象之间的关系)VS2010/MFC编程入门之四十一(文档、视图和框架:分割窗口)第七部分:MFC常用类VS2010/MFC编程入门之四十二(MFC常用类:CString类)VS2010/MFC编程入门之四十三(MFC常用类:CTime类和CTimeSpan类)VS2010/MFC编程入门之四十四(MFC常用类:定时器Timer)VS2010/MFC编程入门之四十五(MFC常用类:CFile文件操作类)VS2010/MFC编程入门之四十六(MFC常用类:MFC异常处理)第八部分:字体和文本输出VS2010/MFC编程入门之四十七(字体和文本输出:CFont字体类)VS2010/MFC编程入门之四十八(字体和文本输出:文本输出)第九部分:图形图像VS2010/MFC编程入门之四十九(图形图像:CDC类及其屏幕绘图函数)VS2010/MFC编程入门之五十(图形图像:GDI对象之画笔CPen)VS2010/MFC编程入门之五十一(图形图像:GDI对象之画刷CBrush)第十部分:Ribbon界面开发VS2010/MFC编程入门之五十二(Ribbon界面开发:创建Ribbon样式的应用程序框架)VS2010/MFC编程入门之五十三(Ribbon界面开发:为Ribbon Bar添加控件)VS2010/MFC编程入门之五十四(Ribbon界面开发:使用更多控件并为控件添加消息处理函数)VS2010/MFC编程入门之前言鸡啄米的C++编程入门系列给大家讲了C++的编程入门知识,大家对C++语言在语法和设计思想上应该有了一定的了解了。
第一讲桌面GIS应用程序框架的建立本讲主要是使用MapControl、PageLayoutControl、ToolbarControl、TOCControl四个控件建立起基本的桌面GIS应用程序框架。
最终成果预览如下:1、新建项目启动VS2005,选择“文件|新建|项目”,在项目类型中选择Visual C#,再选择Windows应用程序模板,输入名称“3sdnMap”,点击确定。
在解决方案管理器中将“Form1.cs”重命名为“3sdnMap.cs”,在设计视图中,选中窗体,将其属性中的“Text”改为“3sdnMap”。
2、添加控件选择工具箱中的“菜单和工具栏|MenuStrip”,将其拖入窗体。
选择工具箱中的“ArcGIS Windows Forms”节,将“ToolbarControl”控件拖入窗体,并将其属性中的Dock设置为Top。
选择工具箱中的“菜单和工具栏|StatusStrip”,将其拖入到窗体。
选择工具箱中的“容器|SplitContainer”容器拖入窗体,并将其属性中的Dock设置为Fill。
将TabControl控件拖入Panel1,将Alignment属性设置为Bottom,Dock属性设置为Fill。
点击TabPages属性右边的按钮,弹出TabPage 集合编辑器,将tabPage1的Name设置为tabPageLayer,Text设置为图层,将tabPage2的Name设置为tabPageProperty,Text设置为属性。
如下所示。
选择“图层”选项卡,拖入TOCControl控件,设置Dock属性为Fill。
选择“属性”选项卡,拖入DataGridView控件,设置Dock属性为Fill。
拖入TabControl控件到Panel2,设置Dock属性为Fill。
并上述类似的方法,将两个选项卡的Name和Text分别设置为:(tabPageMap、地图),(tabPageLayout,制版)。
ExcelVBA编程实例(150例)主要内容和特点《ExcelVBA编程入门范例》主要是以一些基础而简短的VBA实例来对ExcelV BA中的常用对象及其属性和方法进行讲解,包括应用程序对象、窗口、工作簿、工作表、单元格和单元格区域、图表、数据透视表、形状、控件、菜单和工具栏、帮助助手、格式化操作、文件操作、以及常用方法和函数及技巧等方面的应用。
这些例子都比较基础,很容易理解,因而,很容易调试并得以实现,让您通过具体的实例来熟悉ExcelVBA编程。
■ 分16章共14个专题,以具体实例来对大多数常用的ExcelVBA对象进行讲解;■ 一般而言,每个实例都很简短,用来说明使用VBA实现Excel某一功能的操作;■ 各章内容主要是实例,即VBA代码,配以简短的说明,有些例子可能配以必要的图片,以便于理解;■ 您可以对这些实例进行扩充或组合,以实现您想要的功能或更复杂的操作。
VBE编辑器及VBA代码输入和调试的基本知识在学习这些实例的过程中,最好自已动手将它们输入到VBE编辑器中调试运行,来查看它们的结果。
当然,您可以偷赖,将它们复制/粘贴到代码编辑窗口后,进行调试运行。
下面,对VBE编辑器界面进行介绍,并对VBA代码输入和调试的基本知识进行简单的讲解。
激活VBE编辑器一般可以使用以下三种方式来打开VBE编辑器:■ 使用工作表菜单“工具——宏——Visual Basic编辑器”命令,如图00-01所示;■ 在Visual Basic工具栏上,按“Visual Basic编辑器”按钮,如图00-02所示;■ 按Alt+F11组合键。
图00-01:选择菜单“工具——宏——Visual Basic编辑器”命令来打开VBE编辑器图00-02:选择Visual Basic工具栏上的“Visual Basic编辑器”命令按钮来打开VBE编辑器此外,您也可以使用下面三种方式打开VBE编辑器:■ 在任一工作表标签上单击鼠标右键,在弹出的菜单中选择“查看代码”,则可进入VBE编辑器访问该工作表的代码模块,如图00-03所示;■ 在工作簿窗口左上角的Excel图标上单击鼠标右键,在弹出的菜单中选择“查看代码”,则可进入VBE编辑器访问活动工作簿的ThisWorkbook代码模块,如图00-04所示;■ 选择菜单“工具——宏——宏”命令打开宏对话框,若该工作簿中有宏程序,则单击该对话框中的“编辑”按钮即可进行VBE编辑器代码模块,如图00-05所示。
1. Struts2简介1.1. 什么是Struts21.1.1. Struts2的概念Struts2是轻量级的MVC框架,它主要解决了请求分发的问题,重心在于控制层和表现层。
轻量级,指的是Struts2具有较低的侵入性,就是它对我们业务代码的依赖程度很低,简单来说,在使用Struts2框架时,我们的业务代码中基本上不需要import它的包。
Struts2实现了MVC,满足了MVC设计思想。
在我们使用Struts2做开发的时候,就相当于使用了MVC,这是Struts2自动帮助我们实现的,是默认的、隐含的,我们不需要再写特别的代码来实现MVC了。
作为一个框架,Struts2提供了一系列的API,我们可以使用它们来简化代码的编写,从而提升开发效率。
这些API复用程度很高,对业务代码的依赖性也很小,甚至很多是Struts2自动调用的,因此在很大程度上,我们的开发变得可以复用。
Struts2解决请求分发的问题,我们会在后面为什么使用Struts2中讲解。
重心在控制层和表现层,是纵观整个Struts2理论课程来看的,从中我们会体会到这一点,随着大家对Struts2的逐步了解,届时我们再回顾这一点。
1.1.2. 什么是MVCMVC是代码的分层思想,是软件设计领域经典的设计模式。
它根据代码功能的不同,将一个软件的代码分为3部分,即模型、视图、控制器,这3部分代码的含义和功能如下。
1、M-Model 模型模型(Model)的职责是负责业务逻辑。
包含两层:业务数据和业务处理逻辑。
比如实体类、DAO、Service都属于模型层。
2、V-View 视图视图(View)的职责是负责显示界面和用户交互(收集用户信息)。
属于视图的组件是不包含业务逻辑和控制逻辑的JSP。
3、C-Controller 控制器控制器是模型层M和视图层V之间的桥梁,用于控制流程。
比如:在Servlet项目中的单一控制器ActionServlet。
Catia软件背景与发展开发商与历史版本更新与迭代Catia软件不断更新迭代,逐渐增加了新的功能和模块,提高了软件的性能和稳定性。
航空航天领域Catia软件在航空航天领域应用广泛,可用于飞机、火箭、卫星等复杂产品的设计和制造。
汽车工业领域Catia软件是汽车工业领域的重要工具,可用于汽车车身、发动机、底盘等部件的设计和优化。
机械制造领域Catia软件也适用于机械制造领域,可进行各种复杂机械零件的设计和加工。
Catia软件应用领域Catia软件特点与优势强大的建模能力高效的协同设计A B C D精确的工程分析丰富的定制功能界面布局及功能区域划分标准界面布局功能区域划分自定义界面布局工具栏工具栏是菜单栏的快捷访问方式,用户可以将常用的命令添加到工具栏中,方便快速调用。
右键菜单在Catia 软件中,右键点击图形区或结构树中的对象,可以弹出相应的右键菜单,进行快速操作。
菜单栏令,用户可以通过菜单栏快速访问所需的功能。
菜单栏与工具栏使用技巧Catia 软件提供了多种视图控制工具,如平移、旋转、缩放等,方便用户观察和设计模型。
视图控制用户可以通过显示设置调整模型的显示显示设置Catia 软件提供了多种视图模板,用户视图模板010203视图控制与显示设置方法进入草图绘制环境设置草图参数选择草图工具030201草图绘制环境设置方法1 2 3直线绘制圆和圆弧绘制矩形和多边形绘制基本图形元素绘制技巧尺寸约束和几何约束应用尺寸约束01几何约束02约束管理03三维建模环境设置方法选择工作空间根据实际需求选择合适的工作空间,如“零件设计”、“装配设计”等。
设置显示模式调整模型的显示模式,如线框模式、着色模式等,以便更好地观察模型。
定制工具栏根据个人习惯定制工具栏,将常用的命令添加到工具栏中,提高操作效率。
基本体素创建和编辑技巧创建基本体素编辑基本体素应用草图布尔运算和特征变换应用布尔运算特征变换应用实例装配设计环境设置方法进入装配设计模块设置工作环境加载零部件零部件装配约束类型及技巧约束类型约束技巧装配体爆炸视图生成方法进入爆炸视图模式01设置爆炸参数02生成爆炸视图03工程图绘制环境设置方法进入工程图绘制环境设置图纸大小和比例设置图层和线型视图创建和编辑技巧创建基本视图编辑视图创建剖视图和局部放大图尺寸标注和技术要求添加方法尺寸标注添加技术要求编辑尺寸标注和技术要求包括绘制线条、圆弧、圆等基本图形,以及进行尺寸标注和约束设置。
CAXA制造工程师实例教程教案第一章:CAXA制造工程师概述教学目标:1. 了解CAXA制造工程师的基本功能和应用领域。
2. 掌握CAXA制造工程师的操作界面和基本操作。
教学内容:1. CAXA制造工程师简介2. CAXA制造工程师的操作界面3. CAXA制造工程师的基本操作教学过程:1. 讲解CAXA制造工程师的功能和应用领域。
2. 演示CAXA制造工程师的操作界面和基本操作。
3. 学生实际操作,熟悉界面和基本操作。
练习题:1. 简述CAXA制造工程师的功能和应用领域。
2. 演示如何打开一个文件并在CAXA制造工程师中进行基本操作。
第二章:二维绘图教学目标:1. 掌握CAXA制造工程师的二维绘图功能。
2. 学会使用CAXA制造工程师进行基本二维图形绘制。
教学内容:1. 二维绘图基础2. 基本二维图形的绘制3. 二维图形的编辑教学过程:1. 讲解二维绘图基础,包括坐标系和图层。
2. 演示基本二维图形的绘制方法。
3. 讲解二维图形的编辑方法,包括移动、旋转和缩放。
4. 学生实际操作,练习绘制和编辑二维图形。
练习题:1. 简述CAXA制造工程师二维绘图的基础知识。
2. 演示如何使用CAXA制造工程师绘制一个矩形。
3. 演示如何使用CAXA制造工程师编辑一个已绘制的图形。
第三章:三维建模教学目标:1. 掌握CAXA制造工程师的三维建模功能。
2. 学会使用CAXA制造工程师进行基本三维模型创建。
教学内容:1. 三维建模基础2. 基本三维图元的创建3. 三维模型的编辑教学过程:1. 讲解三维建模基础,包括坐标系和视图。
2. 演示基本三维图元的创建方法。
3. 讲解三维模型的编辑方法,包括移动、旋转和缩放。
4. 学生实际操作,练习创建和编辑三维模型。
练习题:1. 简述CAXA制造工程师三维建模的基础知识。
2. 演示如何使用CAXA制造工程师创建一个长方体。
3. 演示如何使用CAXA制造工程师编辑一个已创建的三维模型。
Excel编程实例(170例)主要内容和特点《ExcelVBA编程入门范例》主要是以一些基础而简短的VBA实例来对ExcelVBA中的常用对象及其属性和方法进行讲解,包括应用程序对象、窗口、工作簿、工作表、单元格和单元格区域、图表、数据透视表、形状、控件、菜单和工具栏、帮助助手、格式化操作、文件操作、以及常用方法和函数及技巧等方面的应用示例。
这些例子都比较基础,很容易理解,因而,很容易调试并得以实现,让您通过具体的实例来熟悉ExcelVBA编程。
■分16章共14个专题,以具体实例来对大多数常用的ExcelVBA对象进行讲解;■一般而言,每个实例都很简短,用来说明使用VBA实现Excel某一功能的操作;■各章内容主要是实例,即VBA代码,配以简短的说明,有些例子可能配以必要的图片,以便于理解;■您可以对这些实例进行扩充或组合,以实现您想要的功能或更复杂的操作。
VBE编辑器及VBA代码输入和调试的基本知识在学习这些实例的过程中,最好自已动手将它们输入到VBE编辑器中调试运行,来查看它们的结果。
当然,您可以偷赖,将它们复制/粘贴到代码编辑窗口后,进行调试运行。
下面,对VBE编辑器界面进行介绍,并对VBA代码输入和调试的基本知识进行简单的讲解。
激活VBE编辑器一般可以使用以下三种方式来打开VBE编辑器:■使用工作表菜单“工具——宏——Visual Basic编辑器”命令,如图00-01所示;■在Visual Basic工具栏上,按“Visual Basic编辑器”按钮,如图00-02所示;■按Alt+F11组合键。
图00-01:选择菜单“工具——宏——Visual Basic编辑器”命令来打开VBE 编辑器图00-02:选择Visual Basic工具栏上的“Visual Basic编辑器”命令按钮来打开VBE编辑器此外,您也可以使用下面三种方式打开VBE编辑器:■在任一工作表标签上单击鼠标右键,在弹出的菜单中选择“查看代码”,则可进入VBE编辑器访问该工作表的代码模块,如图00-03所示;■在工作簿窗口左上角的Excel图标上单击鼠标右键,在弹出的菜单中选择“查看代码”,则可进入VBE编辑器访问活动工作簿的ThisWorkbook代码模块,如图00-04所示;■选择菜单“工具——宏——宏”命令打开宏对话框,若该工作簿中有宏程序,则单击该对话框中的“编辑”按钮即可进行VBE编辑器代码模块,如图00-05所示。
ExcelVBA编程实例(150例)欧阳学文主要内容和特点《ExcelVBA编程入门范例》主要是以一些基础而简短的VBA实例来对ExcelVBA中的常用对象及其属性和方法进行讲解,包括应用程序对象、窗口、工作簿、工作表、单元格和单元格区域、图表、数据透视表、形状、控件、菜单和工具栏、帮助助手、格式化操作、文件操作、以及常用方法和函数及技巧等方面的应用示例。
这些例子都比较基础,很容易理解,因而,很容易调试并得以实现,让您通过具体的实例来熟悉ExcelVBA编程。
■ 分16章共14个专题,以具体实例来对大多数常用的Exc elVBA对象进行讲解;■ 一般而言,每个实例都很简短,用来说明使用VBA实现Excel某一功能的操作;■ 各章内容主要是实例,即VBA代码,配以简短的说明,有些例子可能配以必要的图片,以便于理解;■ 您可以对这些实例进行扩充或组合,以实现您想要的功能或更复杂的操作。
VBE编辑器及VBA代码输入和调试的基本知识在学习这些实例的过程中,最好自已动手将它们输入到VBE编辑器中调试运行,来查看它们的结果。
当然,您可以偷赖,将它们复制/粘贴到代码编辑窗口后,进行调试运行。
下面,对VBE编辑器界面进行介绍,并对VBA代码输入和调试的基本知识进行简单的讲解。
激活VBE编辑器一般可以使用以下三种方式来打开VBE编辑器:■ 使用工作表菜单“工具——宏——Visual Basic编辑器”命令,如图0001所示;■ 在Visual Basic工具栏上,按“Visual Basic编辑器”按钮,如图0002所示;■ 按Alt+F11组合键。
图0 001:选择菜单“工具——宏——Visual Basic编辑器”命令来打开VBE编辑器图0002:选择Visual Basic工具栏上的“Visual B asic编辑器”命令按钮来打开VBE编辑器此外,您也可以使用下面三种方式打开VBE编辑器:■ 在任一工作表标签上单击鼠标右键,在弹出的菜单中选择“查看代码”,则可进入VBE编辑器访问该工作表的代码模块,如图0003所示;■ 在工作簿窗口左上角的Excel图标上单击鼠标右键,在弹出的菜单中选择“查看代码”,则可进入VBE编辑器访问活动工作簿的ThisWorkbook代码模块,如图0004所示;■ 选择菜单“工具——宏——宏”命令打开宏对话框,若该工作簿中有宏程序,则单击该对话框中的“编辑”按钮即可进行VBE编辑器代码模块,如图0005所示。
vue 开发h5 实例全文共四篇示例,供读者参考第一篇示例:Vue开发H5实例Vue.js是一款流行的JavaScript框架,用于构建用户界面和单页面应用程序。
它具有简单易用的API和响应式数据绑定,让开发人员可以更快速地开发Web应用程序。
在本文中,我们将探讨如何使用Vue.js开发一个H5实例。
H5是指新一代HTML5技术,用于开发移动端网页应用程序。
由于移动互联网的普及,H5开发变得越来越重要。
在Vue.js中开发H5实例,能够充分发挥Vue的优势,提升开发效率和用户体验。
一、环境准备在开始开发Vue H5实例之前,我们需要准备好开发环境。
确保你已经安装了Node.js和npm包管理器。
然后,通过npm安装Vue CLI 工具,这是Vue.js的官方脚手架工具,用于快速搭建Vue项目。
```bashnpm install -g @vue/cli```安装完成后,我们可以使用Vue CLI创建一个新的Vue项目。
根据提示选择默认配置或手动配置项目,完成项目初始化。
接下来,进入项目目录并启动开发服务器。
现在,你已经成功搭建了一个Vue项目,并启动了开发服务器。
接下来,让我们开始开发Vue H5实例。
二、开发H5实例假设我们要开发一个简单的H5页面,用于展示商品列表和详情。
我们需要创建Vue组件和路由来实现页面导航和内容展示。
1. 创建组件在src目录下创建components文件夹,用于存放Vue组件。
我们创建两个组件:商品列表组件和商品详情组件。
商品列表组件ProductList.vue```vue<template><div><h1>商品列表</h1><!-- 商品列表展示--></div></template><script>export default {name: 'ProductList'}</script><style>/* 样式定义*/</style>```e(VueRouter)const router = new VueRouter({ routes})export default router```3. 集成组件和路由在src目录下的App.vue文件中,引入Vue组件和路由配置。
第59章LISTVIEW控件本期教程讲解STemWin支持的LISTVIEW控件。
59. 1 LISTVIEW控件介绍59. 2 官方WIDGET_ListView实例59. 3 使用官方GUIBulder建立ListView控件59. 3 总结59.1LISTVIEW控件介绍LISTVIEW控件可在具有多个列的列表中选择某个元素。
由于LISTVIEW控件包含了一个HEADER 控件,因此可对列加以管理。
所创建的LISTVIEW既可以无环绕型框架窗口,也可以作为FRAMEWIN控件的一个子窗口。
一旦选定列表视图中的项目,就会突出显示有关项目。
需要注意的是,所选项目的背景颜色取决于LISTVIEW窗口是否具有输入焦点。
下表显示的是LISTVIEW小工具的外观:59.1.1LISTVIEW支持的通知代码以下事件是LISTVIEW控件作为WM_NOTIFY_PARENT消息的一部分发送给其父窗口的:消息 描述WM_NOTIFICATION_CLICKED 已单击WM_NOTIFICATION_RELEASED 已释放WM_NOTIFICATION_MOVED_OUT 已单击小工具,并且指针已移出小工具,但没有释放 WM_NOTIFICATION_SCROLL_CHANGED 可选滚动条的滚动位置已更改WM_NOTIFICATION_SEL_CHANGED 列表框的选择内容已更改59.1.2LISTVIEW支持的键盘反应如果控件具有输入焦点,则它将对下列各键做出反按键 反应GUI_KEY_UP 选择栏上移GUI_KEY_DOWN 选择栏下移。
GUI_KEY_RIGHT 如果总列宽>列表视图的内部区域,则内容将滚动到左侧。
GUI_KEY_LEFT 如果总列宽>列表视图的内部区域,则内容将滚动到右侧。
59.2官方WIDGET_ListView实例官方的这个实例很好的演示了ListView的使用,这个例子在模拟器中的位置:源码如下(程序中进行了详细的注释):#include <stddef.h>#include <string.h>#include "GUI.h"#include "LISTVIEW.h"#include "FRAMEWIN.h"/*********************************************************************** Defines************************************************************************/#define SPEED 650#define MSG_CHANGE_MAIN_TEXT (WM_USER + 0)#define MSG_CHANGE_INFO_TEXT (WM_USER + 1)/*********************************************************************** Static data************************************************************************/static const GUI_COLOR Colors[] = { 0, GUI_BLUE };static const GUI_LOGPALETTE Palette = {2, /* bps */1, /* transparency */Colors /* pointer to colors */};static const unsigned char acBarCode[] = {_XXX_X__, XXX__XX_, X_X_X_XX, __X_XXX_, ________, ________, ________, ________, _XXX_X__, XXX__XX_, X_X_X_XX, __X_XXX_,_XXX_X__, XXX__XX_, X_X_X_XX, __X_XXX_, ________, ________, ________, ________, _XXX_X__, XXX__XX_, X_X_X_XX, __X_XXX_,_XXX_X__, XXX__XX_, X_X_X_XX, __X_XXX_, ________, ________, ________, ________, _XXX_X__, XXX__XX_, X_X_X_XX, __X_XXX_,_XXX_X__, XXX__XX_, X_X_X_XX, __X_XXX_, ________, ________, ________, ________, _XXX_X__, XXX__XX_, X_X_X_XX, __X_XXX_,_XXX_X__, XXX__XX_, X_X_X_XX, __X_XXX_, ________, ________, ________, ________, _XXX_X__, XXX__XX_, X_X_X_XX, __X_XXX_,_XXX_X__, XXX__XX_, X_X_X_XX, __X_XXX_, ________, ________, ________, ________, _XXX_X__, XXX__XX_, X_X_X_XX, __X_XXX_,_XXX_X__, XXX__XX_, X_X_X_XX, __X_XXX_, ________, ________, ________, ________, _XXX_X__, XXX__XX_, X_X_X_XX, __X_XXX_,_XXX_X__, XXX__XX_, X_X_X_XX, __X_XXX_, ________, ________, ________, ________, _XXX_X__, XXX__XX_, X_X_X_XX, __X_XXX_,_XXX_X__, XXX__XX_, X_X_X_XX, __X_XXX_, ________, ________, ________, ________, _XXX_X__, XXX__XX_, X_X_X_XX, __X_XXX_,_XXX_X__, XXX__XX_, X_X_X_XX, __X_XXX_, ________, ________, ________, ________, _XXX_X__, XXX__XX_, X_X_X_XX, __X_XXX_,};static const GUI_BITMAP bmBarCode = { 96, 10, 12, 1, acBarCode, &Palette};static const char * _aTable_1[][3] = {{ "623499-0010001", "1", "Item 1" },{ "623499-0010002", "2", "Item 2" },{ "623499-0010003", "3", "Item 3" },{ "623499-0010004", "4", "Item 4" },{ "623499-0010005", "5", "Item 5" },{ "623499-0010006", "6", "Item 6" },{ "623499-0010007", "7", "Item 7" },{ "623499-0010008", "8", "Item 8" }};static const char * _aTable_2[][3] = {{ "111111-1111111", "100-A", "Item AAA" },{ "222222-2222222", "100-B", "Item BBB" },{ "333333-3333333", "100-C", "Item CCC" },{ "444444-4444444", "100-D", "Item DDD" },{ "555555-5555555", "100-E", "Item EEE" },{ "666666-6666666", "100-F", "Item FFF" },{ "777777-7777777", "100-G", "Item GGG" },{ "888888-8888888", "100-H", "Item HHH" }};static LISTVIEW_Handle _hListView;static char _acMainText[100];static char _acInfoText[100];/********************************************************************* _ChangeMainText** 用于给桌面窗口发自定义消息,并将桌面窗口无效,这样就可以出发桌面窗口回调函数* 的WM_PAINT消息。
qt课设参考文献Qt是一种跨平台的C++应用程序开发框架,已经成为了许多商业应用程序的首选,并得到了广泛的应用。
Qt课设是许多计算机专业者必修的一门课程,其可以让学生们理解Qt的开发方式以及面向对象的编程模式。
以下是一些Qt课设参考文献的推荐:1.《C++ GUI Programming with Qt 4, Second Edition》该书由Qt公司的创始人之一于2008年出版,基于Qt 4,涵盖了许多GUI应用程序的核心技术,包括窗口系统、事件处理、信号和槽机制、标准GUI组件等。
该书适合在Qt课程学习结束后进行深入阅读,可以用作Qt的参考手册。
2.《Qt编程实战》该书主要讲解Qt在Windows平台下的应用,结合实际应用场景开发,包括基础控件、自定义控件、模型/视图架构、多线程、网络、数据库等方面。
每一章都有丰富的实例代码说明,在Qt课设中,学生可以选择其中的一些例子进行模仿和改进。
3.《Qt Creator快速入门》该书详细介绍了 Qt Creator 这一优秀的开发环境的基本操作,包括主界面、编码、编译、调试等方面。
适合Qt课设初学者阅读,能够帮助学生快速上手,了解如何使用qt进行编程。
4.《Qt 5开发及实例详解》该书是一本介绍Qt 5的实战开发书籍,内容涉及Qt 5的各个方面,包括Qt基础知识、GUI编程、多媒体、网络通信、数据库等干货内容,并提供了丰富实例代码。
该书是初学者入门的最佳选择,同时也是进阶开发者的实用指南。
Qt是一种越来越流行的开发框架,无论是在职业还是学术领域中,Qt都具有很高的应用价值,因此学习Qt成为了现代编程人员的必备技能之一,以上推荐的参考文献都可以帮助读者深入理解Qt编程的核心技术,并且为Qt相关的课设对学生们提供帮助和启发。
AutoCAD中文版实例教程教学教案第一章:AutoCAD 2024基础知识1.1 教学目标了解AutoCAD 2024的界面及功能学会如何创建、保存、打开和关闭图形文件掌握坐标系的概念和基本操作熟悉常用的绘图命令和编辑命令1.2 教学内容AutoCAD 2024界面介绍图形文件的基本操作坐标系的使用常用绘图命令和编辑命令介绍1.3 教学过程讲解AutoCAD 2024界面及功能示范创建、保存、打开和关闭图形文件操作演示坐标系的概念和基本操作讲解常用绘图命令和编辑命令的使用1.4 练习与作业练习创建、保存、打开和关闭图形文件练习坐标系的操作练习使用绘图命令和编辑命令绘制简单的图形第二章:二维绘图命令2.1 教学目标学会使用基本的二维绘图命令熟悉直线、圆、矩形等图元的绘制方法掌握图元属性的设置2.2 教学内容基本二维绘图命令介绍直线、圆、矩形等图元的绘制方法图元属性的设置2.3 教学过程讲解基本二维绘图命令的使用示范直线、圆、矩形等图元的绘制方法讲解图元属性的设置方法2.4 练习与作业练习使用直线、圆、矩形等图元绘制简单的图形练习设置图元属性第三章:二维编辑命令3.1 教学目标学会使用基本的二维编辑命令熟悉选择、删除、移动等操作的执行方法掌握二维图形的修剪和延伸3.2 教学内容基本二维编辑命令介绍选择、删除、移动等操作的执行方法二维图形的修剪和延伸3.3 教学过程讲解基本二维编辑命令的使用示范选择、删除、移动等操作的执行方法讲解二维图形的修剪和延伸方法3.4 练习与作业练习使用选择、删除、移动等操作编辑图形练习进行二维图形的修剪和延伸第四章:图层和视图4.1 教学目标学会使用图层来管理图形对象熟悉视图的缩放和平移掌握三维视图的基本操作4.2 教学内容图层的概念和基本操作视图的缩放和平移三维视图的基本操作4.3 教学过程讲解图层的概念和基本操作示范视图的缩放和平移操作讲解三维视图的基本操作4.4 练习与作业练习使用图层来管理图形对象练习视图的缩放和平移操作练习三维视图的基本操作第五章:尺寸标注5.1 教学目标学会使用AutoCAD进行尺寸标注熟悉线性标注、对齐标注等标注方法掌握标注样式和标注属性的设置5.2 教学内容尺寸标注的概念和基本操作线性标注、对齐标注等标注方法标注样式和标注属性的设置5.3 教学过程讲解尺寸标注的概念和基本操作示范线性标注、对齐标注等标注方法讲解标注样式和标注属性的设置方法5.4 练习与作业练习使用尺寸标注绘制简单的图形练习设置标注样式和标注属性第六章:三维绘图基础6.1 教学目标了解AutoCAD三维绘图的基本概念学会使用三维坐标系统掌握三维图元的绘制方法6.2 教学内容三维绘图的基本概念三维坐标系统的使用三维图元的绘制方法6.3 教学过程讲解AutoCAD三维绘图的基本概念示范三维坐标系统的使用讲解并示范三维图元的绘制方法6.4 练习与作业练习使用三维坐标系统练习绘制三维图元第七章:三维编辑与操作7.1 教学目标学会使用AutoCAD进行三维编辑与操作熟悉三维图元的编辑命令掌握三维图形的变换和操作7.2 教学内容三维图元的编辑命令三维图形的变换和操作7.3 教学过程讲解三维图元的编辑命令示范三维图元的编辑操作讲解三维图形的变换和操作方法7.4 练习与作业练习使用三维编辑命令编辑三维图元练习进行三维图形的变换和操作第八章:三维建模与实体编辑8.1 教学目标学会使用AutoCAD进行三维建模与实体编辑熟悉三维建模的基本命令掌握实体编辑的方法和技巧8.2 教学内容三维建模的基本命令实体编辑的方法和技巧8.3 教学过程讲解三维建模的基本命令示范三维建模的操作讲解实体编辑的方法和技巧8.4 练习与作业练习使用三维建模命令创建三维模型练习使用实体编辑命令编辑三维模型第九章:渲染与打印9.1 教学目标学会使用AutoCAD进行渲染和打印熟悉渲染的基本概念和命令掌握打印设置和输出方法9.2 教学内容渲染的基本概念和命令打印设置和输出方法9.3 教学过程讲解渲染的基本概念和命令示范渲染操作讲解打印设置和输出方法9.4 练习与作业练习使用渲染命令进行渲染练习进行打印设置和输出第十章:综合实例训练10.1 教学目标综合运用所学知识完成复杂图形的绘制和编辑熟悉实际工程图纸的绘制流程掌握AutoCAD在工程设计中的应用技巧10.2 教学内容复杂图形的绘制和编辑工程图纸的绘制流程AutoCAD在工程设计中的应用技巧10.3 教学过程解析复杂图形的绘制和编辑方法示范工程图纸的绘制流程讲解AutoCAD在工程设计中的应用技巧10.4 练习与作业完成一个综合实例,绘制并编辑复杂图形按照工程图纸的绘制流程,完成一个简单的工程图纸绘制总结AutoCAD在工程设计中的应用经验第十一章:动态块和参数化设计11.1 教学目标学会使用AutoCAD创建动态块熟悉动态块的参数设置和行为定义掌握参数化设计的基本概念和应用11.2 教学内容动态块的创建和编辑动态块的参数设置和行为定义参数化设计的基本概念和应用11.3 教学过程讲解动态块的创建和编辑方法示范动态块的参数设置和行为定义讲解参数化设计的基本概念和应用11.4 练习与作业练习创建简单的动态块练习设置动态块的参数和行为尝试应用参数化设计解决实际问题第十二章:AutoCAD高级绘图技巧12.1 教学目标学会使用AutoCAD的高级绘图命令和功能熟悉绘图效率提升的技巧和方法掌握复杂图形的处理和优化技巧12.2 教学内容AutoCAD的高级绘图命令和功能绘图效率提升的技巧和方法复杂图形的处理和优化技巧12.3 教学过程讲解AutoCAD的高级绘图命令和功能示范绘图效率提升的技巧和方法讲解复杂图形的处理和优化技巧12.4 练习与作业练习使用高级绘图命令和功能尝试运用绘图效率提升的技巧和方法处理和优化复杂图形第十三章:AutoCAD与外部数据交换13.1 教学目标学会使用AutoCAD与其他软件进行数据交换熟悉DWG、DXF等文件格式的导入和导出掌握外部参照和块的使用方法13.2 教学内容AutoCAD与其他软件的数据交换方法DWG、DXF等文件格式的导入和导出外部参照和块的使用方法13.3 教学过程讲解AutoCAD与其他软件的数据交换方法示范DWG、DXF等文件格式的导入和导出讲解外部参照和块的使用方法13.4 练习与作业练习导入和导出DWG、DXF等文件格式练习使用外部参照和块第十四章:AutoCAD二次开发技术14.1 教学目标了解AutoCAD的二次开发技术学会使用AutoLISP、VBA等编程语言进行简单的二次开发掌握二次开发技术在实际工程中的应用14.2 教学内容AutoCAD的二次开发技术简介AutoLISP、VBA等编程语言的基本语法和用法二次开发技术在实际工程中的应用案例14.3 教学过程讲解AutoCAD的二次开发技术简介示范使用AutoLISP、VBA等编程语言进行二次开发分析二次开发技术在实际工程中的应用案例14.4 练习与作业尝试使用AutoLISP、VBA等编程语言进行简单的二次开发分析实际工程中二次开发技术的应用第十五章:课程总结与拓展学习15.1 教学目标总结AutoCAD实例教程的主要内容和知识点了解AutoCAD在工程设计中的应用领域掌握继续学习和提升技能的方法和途径15.2 教学内容AutoCAD实例教程的主要内容和知识点回顾AutoCAD在工程设计中的应用领域继续学习和提升技能的方法和途径15.3 教学过程回顾AutoCAD实例教程的主要内容和知识点讲解AutoCAD在工程设计中的应用领域分享继续学习和提升技能的方法和途径15.4 练习与作业复习AutoCAD实例教程的主要内容和知识点了解AutoCAD在工程设计中的应用领域制定个人学习和提升技能的计划重点和难点解析本文主要介绍了AutoCAD中文版实例教程的教学内容,包括基础操作、二维绘图命令、二维编辑命令、图层和视图、尺寸标注、三维绘图基础、三维编辑与操作、三维建模与实体编辑、渲染与打印、综合实例训练、动态块和参数化设计、AutoCAD高级绘图技巧、AutoCAD 与外部数据交换、AutoCAD二次开发技术以及课程总结与拓展学习。
VC项目开发之单文档多视图实现 多视图是VC开发中经常要用到的技术之一,一般地实现单文档多视图有两种方式1)通过视图分割的技术(使用CSplitterWnd实现),将窗口分割为多个部分,每个部分显示各自显示不同的视图,这种技术实现起来比较简单,并且相关的资料也很多。2)通过一个文档关联多个视图,窗口显示整个视图。第二种实现较第一种复杂,这里给出详细的实现方法。
Step 1:使用VC 6.0新建一个Project,命名为:MultiView。除选择单文档属性外,一切使用“默认”方式。于是你可以获得五个类:CMainFrame ,CMultiViewApp,CMultiViewDoc,CMultiViewView,和CAboutDlg;
Step 2:新建一个新的视图View,添加一个新的MFC Class(Insert->New Class),基类为CView(或者CView的派生子类,如CEditView等)。类的名字为CAnotherView,这就是新的视图;并为CAnotherView添加GetDocument的实现:
CMultiViewDoc* CAnotherView::GetDocument() { return (CMultiViewDoc*)m_pDocument; }
Step 3:在CMultiViewApp添加成员变量记录这两个视图: private: CView* m_pFirstView; CView* m_pAnotherView;
给程序菜单IDR_MAINFRAME添加一个菜单项目“视图”,该菜单项有两个子菜单“视图一”和“视图二”,添加相应函数(void CMultiViewApp:: OnShowFirstview()和void CMultiViewApp:: OnShowSecondview());
Step 4:创建新的视图:在BOOL CMultiViewApp::InitInstance()中添加代码: „„. //创建一个新的视图 CView* m_pActiveView = ((CFrameWnd*)m_pMainWnd)->GetActiveView(); m_pFirstView = m_pActiveView;
m_pAnotherView = new CAnotherView(); //文档和视图关联 CDocument* m_pDoc = ((CFrameWnd*)m_pMainWnd)->GetActiveDocument();
CCreateContext context; context.m_pCurrentDoc = m_pDoc;
//创建视图 UINT m_IDFORANOTHERVIEW = AFX_IDW_PANE_FIRST + 1; CRect rect; m_pAnotherView->Create(NULL,NULL,WS_CHILD,rect,m_pMainWnd, m_IDFORANOTHERVIEW,&context); ……
Step 5:现在已经创建了视图,并且都和文档关联起来了。现在要作的就是视图间的转换。在void CMultiViewApp:: OnShowFirstview()中添加实现代码: void CMultiViewApp::OnShowFirstview() { // TODO: Add your command handler code here UINT temp = ::GetWindowLong(m_pAnotherView->m_hWnd, GWL_ID); ::SetWindowLong(m_pAnotherView->m_hWnd, GWL_ID, ::GetWindowLong(m_pFirstView->m_hWnd, GWL_ID));
::SetWindowLong(m_pFirstView->m_hWnd, GWL_ID, temp);
m_pAnotherView->ShowWindow(SW_HIDE); m_pFirstView->ShowWindow(SW_SHOW);
((CFrameWnd*)m_pMainWnd)->SetActiveView(m_pFirstView); ((CFrameWnd*) m_pMainWnd)->RecalcLayout(); m_pFirstView->Invalidate(); }
在void CMultiViewApp:: OnShowSecondview()中添加实现代码: void CMultiViewApp::OnShowSecondview() { // TODO: Add your command handler code here UINT temp = ::GetWindowLong(m_pAnotherView->m_hWnd, GWL_ID); ::SetWindowLong(m_pAnotherView->m_hWnd, GWL_ID, ::GetWindowLong(m_pFirstView->m_hWnd, GWL_ID)); ::SetWindowLong(m_pFirstView->m_hWnd, GWL_ID, temp);
m_pFirstView->ShowWindow(SW_HIDE); m_pAnotherView->ShowWindow(SW_SHOW);
((CFrameWnd*)m_pMainWnd)->SetActiveView(m_pAnotherView); ((CFrameWnd*) m_pMainWnd)->RecalcLayout(); m_pAnotherView->Invalidate(); }
Step 6:为了演示,这里将不同的视图给予一个标记,在CMultiViewView和CAnotherView的OnDraw方法中分别添加以下代码:
pDC->TextOut(400,300,"First View"); pDC->TextOut(400,320,pDoc->GetTitle());
和 pDC->TextOut(400,300,"Another View"); pDC->TextOut(400,320,pDoc->GetTitle());
至此就大功告成了,但是实现过程中有4点说明: 1) 实现中由于使用到相关的类,因此在必要的地方要include相关的头文件,这里省略;CAnotherView的默认构造函数是Protected的,需要将其改为Public,或者提供一个产生CAnotherView对象的方法(因要创建视图对象); 2) 这里给出的是一个示例代码,实际开发中可以通过参考实现获得自己想要实现的具体应用情况(例如视图类的不同、数量不同,更重要的还有业务逻辑的不同实现等);
VC随笔切分窗口和多视图 动态切分窗口: 动态切分窗口不能包含多于4个的窗格,要想得到4个以上的窗格,可以使用静态切分窗口。动态切分窗口中的几个窗格通常使用的是同一个视图类。 创建动态切分窗口的方式共有3种: 1、在创建应用程序时,利用应用程序向导AppWizard的选项设置切分窗口 2、在创建了应用程序之后,通过添加组件对窗口进行切分 3、通过手动添加代码编程的方式
使用AppWizard创建动态切分: 在MFC AppWizard Step 4 of 6对话框中,单击Advanced按钮,弹出Advanced Options对话框,选择Window Styles选项卡,选中该页的Use split window检查框。
使用Splitter Bar组件: 选择Project|Add To Project|Components and Controls...菜单,弹出Components and Controls Gallery对话框。双击Visual C++ Components目录,选择Splitter Bar项,插入Splitter Bar组件。 运行程序,打开【查看】菜单或者是【窗口】菜单,找不到前面使用AppWizard添加动态切分时的【分隔】菜单项。说明Splitter Bar组件的方式并没有添加相应的菜单项,程序员可以自己添加上去。 注意:菜单的Caption(标题)可以随便设定,但注意菜单项的ID必须是ID_WINDOW_SPLIT。ID_WINDOW_SPLIT是系统预先指定的,程序员一般不需要对此命令ID添加命令消息处理函数,就可以实现分隔,因为MFC应用程序框架中已经对该命令ID的消息进行了处理。
手动添加代码: 1、在框架窗口类(对单文档为主框架窗口,对多文档为子框架窗口)中声明一个CSplitterWnd类的成员变量m_wndSplitter 2、使用ClassWizard为框架窗口类添加OnCreateClient函数 注意:这里使用ClassWizard是重写父类的虚函数,而不是添加消息处理 3、在OnCreateClient函数中调用CSplitterWnd类的成员函数Create产生动态切分 4、为应用程序添加一个ID为ID_WINDOW_SPLIT的菜单项
CSplitterWnd切分窗口类: CSplitterWnd的成员函数中,有3个使用非常频繁 1、Create函数