77范文网 - 专业文章范例文档资料分享平台

ArcGIS例子(7)

来源:网络收集 时间:2019-08-20 下载这篇文档 手机版
说明:文章内容仅供预览,部分内容可能不全,需要完整文档或者需要复制内容,请下载word后使用。下载word有问题请添加微信号:或QQ: 处理(尽可能给您提供完整文档),感谢您的支持与谅解。点击这里给我发消息

private ICustomizeDialogEvents_OnCloseDialogEventHandler

closeDialogE; // CustomizeDialog关闭事件

??

注:Visual Studio .NET提供了当程序集对COM interop开放时执行的函数在系统中被注册和取消注册的功能。这就允许你在定制对话框可能找到的组件目录中注册你自己的类。

2. 创建一个叫CreateCustomizeDialog的新函数,这个函数是你通过增加如下代码创建自定义对话框的地方。

private void CreateCustomizeDialog() {

// 设置自定义对话框事件 startDialogE = new

ICustomizeDialogEvents_OnStartDialogEventHandler(OnStartDialog);

((ICustomizeDialogEvents_Event)m_CustomizeDialog).OnStartDialog +=

startDialogE;

closeDialogE = new

ICustomizeDialogEvents_OnCloseDialogEventHandler(OnCloseDialog);

((ICustomizeDialogEvents_Event)m_CustomizeDialog).OnCloseDialog +=

closeDialogE;

// 设置标题

m_CustomizeDialog.DialogTitle = \自定义ToolbarControl项目\ // 显示“从文件添加”按钮

m_CustomizeDialog.ShowAddFromFile = true; // 设置将增加新项目的ToolbarControl

m_CustomizeDialog.SetDoubleClickDestination(axToolbarControl1); }

注:设置ComVisible属性为false确保此方法不能被COM客户端直接调用。当程序集通过COM注册时,它不影响被调用的方法。

3. 在Form_Load事件中调用CreateOverviewSymbol子过程以前调用CreateCustomizeDialog函数。

private void Form1_Load(object sender, System.EventArgs e) {

// 当缩放时禁止重绘

this.SetStyle(ControlStyles.EnableNotifyMessage, true); // 为ToolbarControl创建自定义对话框 CreateCustomizeDialog(); ??

}

4. 在窗体上增加一个名叫“chkCustomize”的复选框,并将标题命名为“定制”。

5. 在设计模式显示窗体并从属性窗口选择chkCustomize控件,显示chkCustomize事件。在CheckedChanged事件上

双击向代码窗口增加相应的事件处理。

6. 向chkCustomize_CheckedChanged事件中增加下列代码。

private void chkCustomize_CheckedChanged(object sender, System.EventArgs e) {

// 显示或隐藏自定义对话框

if (chkCustomize.Checked == false ) {

m_CustomizeDialog.CloseDialog(); axToolbarControl1.Customize = false;

}

else {

m_CustomizeDialog.StartDialog(axToolbarControl1.hWnd); axToolbarControl1.Customize = true;

} }

7. 增加下以下OnStartDialog和OnCloseDialog事件处理函数。这些函数将与自定义对话框打开或关闭时触发的事件

紧密连接。

private void OnStartDialog() {

axToolbarControl1.Customize = true;

}

private void OnCloseDialog() {

axToolbarControl1.Customize = false; chkCustomize.Checked = false; }

8. 生成并运行应用程序,选择定制复选框使ToolbarControl进入自定义模式,并打开自定义对话框。

9. 在自定义ToolbarControl项目对话框中的左边目录(Categories)列表中选择“Graphic Element”项,然后在右边

的命令(Commands)列表中“Select Elements”项上双击将其加入到ToolbarControl工具栏中。右键点击ToolbarControl上的任何一个项目,你可以调整它的显示样式和组合特性。 10. 结束定制应用。使用选择工具移动包含日期的文本元素。

六、部署

要将应用程序成功地部署到另一台机器上,必须为应用程序配置协议。首先,它必须检查产品协议是否有效,其次,它必须初始化协议。如果协议配置不正确有,应用程序将不能运行。

注:当采用ESRI ArcObjects开发独立运行的程序时,应用程序负责检查并配置协议选项。它通过实现CoClass AoInitialize和IAoInitialize接口来支持协议配置。应用程序运行时,在任何ESRI ArcObject功能被访问之前协议初始化必须先被执行。如果初始化失败将导致应用程序错误。

1. 向类中增加下列成员变量。

public class Form1 : System.Windows.Forms.Form {

private ESRI.ArcGIS.MapControl.AxMapControl axMapControl1;

private ESRI.ArcGIS.PageLayoutControl.AxPageLayoutControl axPageLayoutControl1; private ESRI.ArcGIS.TOCControl.AxTOCControl axTOCControl1;

private ESRI.ArcGIS.ToolbarControl.AxToolbarControl axToolbarControl1; // 应用初始化对象

private IAoInitialize m_AoInitialize = new AoInitializeClass();

// 后面是弹出菜单变量声明代码 ??

2. 在Form_Load事件的最开始位置增加下列代码。

private void Form1_Load(object sender, System.EventArgs e) {

// 创建新的AoInitialize对象 if ( m_AoInitialize == null) {

System.Windows.Forms.MessageBox.Show(

\初始化失败,程序不能运行!\

}

this.Close();

// 判断产品是否有效

esriLicenseStatus licenseStatus = (esriLicenseStatus)

m_AoInitialize.IsProductCodeAvailable(

esriLicenseProductCode.esriLicenseProductCodeEngine);

百度搜索“77cn”或“免费范文网”即可找到本站免费阅读全部范文。收藏本站方便下次阅读,免费范文网,提供经典小说教育文库ArcGIS例子(7)在线全文阅读。

ArcGIS例子(7).doc 将本文的Word文档下载到电脑,方便复制、编辑、收藏和打印 下载失败或者文档不完整,请联系客服人员解决!
本文链接:https://www.77cn.com.cn/wenku/jiaoyu/682106.html(转载请注明文章来源)
Copyright © 2008-2022 免费范文网 版权所有
声明 :本网站尊重并保护知识产权,根据《信息网络传播权保护条例》,如果我们转载的作品侵犯了您的权利,请在一个月内通知我们,我们会及时删除。
客服QQ: 邮箱:tiandhx2@hotmail.com
苏ICP备16052595号-18
× 注册会员免费下载(下载后可以自由复制和排版)
注册会员下载
全站内容免费自由复制
注册会员下载
全站内容免费自由复制
注:下载文档有可能“只有目录或者内容不全”等情况,请下载之前注意辨别,如果您已付费且无法下载或内容有问题,请联系我们协助你处理。
微信: QQ: