多视图开发实例讲解

合集下载

VisualBasic开发实战1200例

VisualBasic开发实战1200例

《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编程实例(150例)

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所示。

ArcGIS Engine C#实例开发教程

ArcGIS Engine C#实例开发教程

第一讲 桌面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入门到精通教程(1-55全部)

VS2010之MFC入门到精通教程(1-55全部)

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++语言在语法和设计思想上应该有了一定的了解了。

ArcGIS Engine9.2 + C#实例开发详细教程

ArcGIS Engine9.2 + 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,制版)。

VBA编程实例(150例)

VBA编程实例(150例)

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所示。

ArcObject开发基础介绍

ArcObject开发基础介绍
开发实例演示
通过一个简单的开发实例,演示如何 使用ArcObject进行GIS应用程序的开 发,包括界面设计、功能实现等。
02
ArcObject概述
ArcObject定义
ArcObject是ESRI公司ArcGIS系列产 品的开发平台,它是一组基于 Microsoft COM技术的组件的集合 。
通过ArcObject提供的编辑工具,实现空间要素的创建、修改和 删除,包括点、线、面等要素类型。
对空间要素的属性信息进行编辑和修改,支持批量编辑和自定 义属性字段。
对空间数据进行拓扑检查和处理,修复拓扑错误,保证空间数 据的完整性和准确性。
在多用户编辑环境下,提供编辑冲突检测和处理机制,确保编 辑操作的正确性和一致性。
支持同时打印多张地图或批量打 印同一地图的不同区域,提高打 印效率。
三维场景构建与可视化
三维数据加载
支持加载各种类型的三维数据,如地形数据、建筑物数据、点云 数据等,构建真实感强的三维场景。
三维分析功能
提供三维空间分析功能,如视线分析、剖面分析、通视分析等,满 足用户对三维数据的分析需求。
三维可视化效果
01
02
下载ArcObject SDK for .NET安 装包,并双击运行安装程序。
按照安装向导的提示,选择安装 位置等选项。
等待安装程序完成ArcObject SDK for .NET的安装。
03
配置Visual Studio开发环境,将 ArcObject SDK for .NET添加到
Visual Studio中。
地图浏览
实现地图的放大、缩小、平移、全图显示等基本操作,提供流畅的地 图浏览体验。
图层管理
对地图中的图层进行添加、删除、隐藏、显示等操作,支持对图层的 顺序进行调整。

01、struts2(Struts2开发入门 、常用配置、参数传递) - 副本

01、struts2(Struts2开发入门 、常用配置、参数传递) - 副本

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。

  1. 1、下载文档前请自行甄别文档内容的完整性,平台不提供额外的编辑、内容补充、找答案等附加服务。
  2. 2、"仅部分预览"的文档,不可在线预览部分如存在完整性等问题,可反馈申请退款(可完整预览的文档不适用该条件!)。
  3. 3、如文档侵犯您的权益,请联系客服反馈,我们会尽快为您处理(人工客服工作时间:9:00-18:30)。

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函数

相关文档
最新文档