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

ArcGIS Engine+C# 初学者实例代码

来源:用户分享 时间:2025/11/20 11:54:56 本文由loading 分享 下载这篇文档手机版
说明:文章内容仅供预览,部分内容可能不全,需要完整文档或者需要复制内容,请下载word后使用。下载word有问题请添加微信号:xxxxxxx或QQ:xxxxxx 处理(尽可能给您提供完整文档),感谢您的支持与谅解。

}

(7) 为了操作上的方便,我们添加SymbologyControl的DoubleClick事件,当双击

符号时同按下确定按钮一样,选定符号并关闭符号选择器窗体。代码如下:

///

/// 双击符号同单击确定按钮,关闭符号选择器。 ///

///

this.btnOK.PerformClick(); }

(8) 再添加符号预览函数,当用户选定某一符号时,符号可以显示在PictureBox控

件中,方便预览,函数代码如下:

///

/// 把选中并设置好的符号在picturebox控件中预览 ///

private void PreviewImage() {

stdole.IPictureDisp picture = this.axSymbologyControl.GetStyleClass(this.axSymbologyControl.StyleClass).PreviewItem(pStyleGalleryItem, this.ptbPreview.Width, this.ptbPreview.Height); System.Drawing.Image image = System.Drawing.Image.FromHbitmap(new System.IntPtr(picture.Handle));

this.ptbPreview.Image = image; }

(9) 当SymbologyControl的样式改变时,需要重新设置符号参数调整控件的可视性,

故要添加SymbologyControl的OnStyleClassChanged事件,事件代码与Load事件类似,如下:

///

/// 当样式(Style)改变时,重新设置符号类型和控件的可视性 ///

///

switch ((esriSymbologyStyleClass)(e.symbologyStyleClass)) {

case esriSymbologyStyleClass.esriStyleClassMarkerSymbols: this.lblAngle.Visible = true; this.nudAngle.Visible = true; this.lblSize.Visible = true;

this.nudSize.Visible = true; this.lblWidth.Visible = false; this.nudWidth.Visible = false;

this.lblOutlineColor.Visible = false; this.btnOutlineColor.Visible = false; break;

case esriSymbologyStyleClass.esriStyleClassLineSymbols: this.lblAngle.Visible = false; this.nudAngle.Visible = false; this.lblSize.Visible = false; this.nudSize.Visible = false; this.lblWidth.Visible = true; this.nudWidth.Visible = true;

this.lblOutlineColor.Visible = false; this.btnOutlineColor.Visible = false; break;

case esriSymbologyStyleClass.esriStyleClassFillSymbols: this.lblAngle.Visible = false; this.nudAngle.Visible = false; this.lblSize.Visible = false; this.nudSize.Visible = false; this.lblWidth.Visible = true; this.nudWidth.Visible = true;

this.lblOutlineColor.Visible = true; this.btnOutlineColor.Visible = true; break; } }

2.5 调用自定义符号选择器

通过以上操作,本符号选择器雏形已经完成,我们可以3sdnMap主窗体中调用并进行测试。如果您已经完成“直接调用ArcMap中的符号选择器”这一节,请注释axTOCControl1_OnDoubleClick事件响应函数里的代码,并添加如下代码。如果您是直接学习自定义符号选择器这一节的,请先添加axTOCControl1控件的OnDoubleClick事件,再添加如下事件响应函数代码: ///

/// 双击TOCControl控件时触发的事件 ///

///

搜索更多关于: ArcGIS Engine+C# 初学者实例代码 的文档
ArcGIS Engine+C# 初学者实例代码.doc 将本文的Word文档下载到电脑,方便复制、编辑、收藏和打印
本文链接:https://www.diyifanwen.net/c304we7jdd56et861e26i_13.html(转载请注明文章来源)
热门推荐
Copyright © 2012-2023 第一范文网 版权所有 免责声明 | 联系我们
声明 :本网站尊重并保护知识产权,根据《信息网络传播权保护条例》,如果我们转载的作品侵犯了您的权利,请在一个月内通知我们,我们会及时删除。
客服QQ:xxxxxx 邮箱:xxxxxx@qq.com
渝ICP备2023013149号
Top