『公告』 预祝您龙年大吉,万事如意, 过节期间, 大家如需数据服务,请拨打400 或直接添加客服微信,再祝大家龙年,心想事成。
关注我们 新浪 腾讯

ArcGIS二次开发-如何拷贝属性表中的一行

ArcGIS二次开发-如何拷贝属性表中的一行
本例要实现的是如何将所有属性表(Attribute Table)中的行拷贝到Windows 剪贴板,使用户能使用文本编辑器等软件对选中的数据做进一步编辑,从而满足特殊要求。行中的每个属性用半角字符的逗号“,”分隔,行间用换行符分隔。 
       首先需要取得某属性表中的所有选中记录的全部属性,以一个字符串来存储。因为在属性表中选取中记录(Row)后,层中的相应记录(Feature)也将选

中。两种途径都能获得所需属性值。 

       得到所需的字符串 sResult 后,就可以将其拷贝到剪贴板。在 VB 中剪贴板是全局对象。可像如下使用: 

       Clipboard.Clear 
       Clipboard.SetText sResult 
       本 例 将 在 VBA 中 实 现 相 同 的 功 能 。 用 到 了 IGraphicsContianer 、IGraphicsContainerSelect、ITextElement、IElement、IClipboardFormat 接口。
       过程 UIBCopyRow_Click 是实现模块,调用过程 CopyRow 实现功能。过程CopyRow 将选中行的全部属性值(忽略 Shape 属性)连接成字符串,然后创建TextElement 对象,并添加到 IGraphicsContainer 对象的选择集中,再调用TextClipboardFormat 的 Copy 方法,把字符拷贝到 Windows 剪贴板。 

      京ICP备2025132830号-1 京公网安备 号