阅读:5089回复:11
ArcEngine实现属性编辑
<P>请问斑竹和各位大侠在ArcEngine中如何实现属性编辑,如添加字段,删除字段,修改值等功能!小弟在这先谢过了!</P>
|
|
1楼#
发布于:2006-04-17 10:52
ifieldEditor
|
|
2楼#
发布于:2006-04-17 12:10
那如何实现属性表的显示呢?我知道可以自己编程制表读取字段以及属性值,但是却不能够建立属性表与图形之间的连接,这个问题我思考了较长时间,有没有那位愿意共同讨论一下?我的泡泡账号:apple_dan0913
|
|
3楼#
发布于:2006-04-17 13:31
<P>谢谢二楼的大侠!!</P><img src="images/post/smile/dvbbs/em02.gif" />
|
|
4楼#
发布于:2006-04-18 20:33
<P>你只要做好了属性表的显示就完成了九成了,属性表和图形的连接是非常简单的,通过OID进行连接。</P>
|
|
5楼#
发布于:2006-04-29 17:01
如何显示属性表?请教了!
|
|
6楼#
发布于:2006-04-29 19:10
<DIV class=quote><B>以下是引用<I>dan800913</I>在2006-4-17 12:10:20的发言:</B><BR>那如何实现属性表的显示呢?我知道可以自己编程制表读取字段以及属性值,但是却不能够建立属性表与图形之间的连接,这个问题我思考了较长时间,有没有那位愿意共同讨论一下?我的泡泡账号:apple_dan0913</DIV>
<P>可以使用feature的value属性来显示属性,定位只是一个显示要素的过程</P> |
|
|
7楼#
发布于:2006-05-19 16:34
<P>请上面的高手能不能把全部的代码发出来!本人是新手!谢谢</P>
|
|
8楼#
发布于:2006-05-20 05:51
<P>最近也正在做,还没有全部解决,把代码贴上来,大家一起讨论讨论</P>
<P>添加字段:(还有问题)</P> <P>下面帖子:”添加字段时,IfieldEdit为只读“中有代码。</P> <P>修改值,已通过:</P> <P>Private Function EditFeature(pFeatureClass As IFeatureClass) As Boolean<p></p></P> <P 0cm 0cm 0pt; TEXT-ALIGN: left; mso-layout-grid-align: none" align=left>Dim pFeature As IFeature<p></p></P> <P 0cm 0cm 0pt; TEXT-ALIGN: left; mso-layout-grid-align: none" align=left>Dim pFeatureCursor As IFeatureCursor<p></p></P> <P 0cm 0cm 0pt; TEXT-ALIGN: left; mso-layout-grid-align: none" align=left>On Error GoTo ErrorHandler:<p></p></P> <P 0cm 0cm 0pt; TEXT-ALIGN: left; mso-layout-grid-align: none" align=left>EditFeature = False<p></p></P> <P 0cm 0cm 0pt; TEXT-ALIGN: left; mso-layout-grid-align: none" align=left>If (pFeatureClass Is Nothing) Then<p></p></P> <P 0cm 0cm 0pt; TEXT-ALIGN: left; mso-layout-grid-align: none" align=left>Exit Function<p></p></P> <P 0cm 0cm 0pt; TEXT-ALIGN: left; mso-layout-grid-align: none" align=left>End If<p></p></P> <P 0cm 0cm 0pt; TEXT-ALIGN: left; mso-layout-grid-align: none" align=left>Set pFeatureCursor = pFeatureClass.Update(Nothing, False)<p></p></P> <P 0cm 0cm 0pt; TEXT-ALIGN: left; mso-layout-grid-align: none" align=left>Set pFeature = pFeatureCursor.NextFeature<p></p></P> <P 0cm 0cm 0pt; TEXT-ALIGN: left; mso-layout-grid-align: none" align=left>If (Not pFeature Is Nothing) Then<p></p></P> <P 0cm 0cm 0pt; TEXT-ALIGN: left; mso-layout-grid-align: none" align=left>pFeature.Value(6) = "New Place"<p></p></P> <P 0cm 0cm 0pt; TEXT-ALIGN: left; mso-layout-grid-align: none" align=left>pFeatureCursor.UpdateFeature pFeature<p></p></P> <P 0cm 0cm 0pt; TEXT-ALIGN: left; mso-layout-grid-align: none" align=left>MsgBox ("修改成功")<p></p></P> <P 0cm 0cm 0pt; TEXT-ALIGN: left; mso-layout-grid-align: none" align=left>EditFeature = True<p></p></P> <P 0cm 0cm 0pt; TEXT-ALIGN: left; mso-layout-grid-align: none" align=left>Else<p></p></P> <P 0cm 0cm 0pt; TEXT-ALIGN: left; mso-layout-grid-align: none" align=left>MsgBox ("修改失败")<p></p></P> <P 0cm 0cm 0pt; TEXT-ALIGN: left; mso-layout-grid-align: none" align=left>End If<p></p></P> <P 0cm 0cm 0pt; TEXT-ALIGN: left; mso-layout-grid-align: none" align=left>Exit Function<p></p></P> <P 0cm 0cm 0pt; TEXT-ALIGN: left; mso-layout-grid-align: none" align=left>ErrorHandler:<p></p></P> <P 0cm 0cm 0pt; TEXT-ALIGN: left; mso-layout-grid-align: none" align=left>MsgBox Err.Description<p></p></P> <P 0cm 0cm 0pt; TEXT-ALIGN: left; mso-layout-grid-align: none" align=left>End Function</P> <P 0cm 0cm 0pt; TEXT-ALIGN: left; mso-layout-grid-align: none" align=left><p></p> </P> <P 0cm 0cm 0pt; TEXT-ALIGN: left; mso-layout-grid-align: none" align=left>Private Function OpenFeatureClass() As IFeatureClass<p></p></P> <P 0cm 0cm 0pt; TEXT-ALIGN: left; mso-layout-grid-align: none" align=left>Dim pMxDocument As IMxDocument<p></p></P> <P 0cm 0cm 0pt; TEXT-ALIGN: left; mso-layout-grid-align: none" align=left>Dim pMap As IMap<p></p></P> <P 0cm 0cm 0pt; TEXT-ALIGN: left; mso-layout-grid-align: none" align=left>Dim pFeatureLayer As IFeatureLayer<p></p></P> <P 0cm 0cm 0pt; TEXT-ALIGN: left; mso-layout-grid-align: none" align=left>Dim pFeatureClass As IFeatureClass<p></p></P> <P 0cm 0cm 0pt; TEXT-ALIGN: left; mso-layout-grid-align: none" align=left>On Error GoTo ErrorHandler:<p></p></P> <P 0cm 0cm 0pt; TEXT-ALIGN: left; mso-layout-grid-align: none" align=left>Set OpenFeatureClass = Nothing<p></p></P> <P 0cm 0cm 0pt; TEXT-ALIGN: left; mso-layout-grid-align: none" align=left>Set pMxDocument = ThisDocument<p></p></P> <P 0cm 0cm 0pt; TEXT-ALIGN: left; mso-layout-grid-align: none" align=left>Set pMap = pMxDocument.FocusMap<p></p></P> <P 0cm 0cm 0pt; TEXT-ALIGN: left; mso-layout-grid-align: none" align=left>If (pMap.LayerCount = 0) Then<p></p></P> <P 0cm 0cm 0pt; TEXT-ALIGN: left; mso-layout-grid-align: none" align=left>MsgBox ("缺少数据")<p></p></P> <P 0cm 0cm 0pt; TEXT-ALIGN: left; mso-layout-grid-align: none" align=left>Exit Function<p></p></P> <P 0cm 0cm 0pt; TEXT-ALIGN: left; mso-layout-grid-align: none" align=left>End If<p></p></P> <P 0cm 0cm 0pt; TEXT-ALIGN: left; mso-layout-grid-align: none" align=left>Set pFeatureLayer = pMap.Layer(0)<p></p></P> <P 0cm 0cm 0pt; TEXT-ALIGN: left; mso-layout-grid-align: none" align=left>Set pFeatureClass = pFeatureLayer.FeatureClass<p></p></P> <P 0cm 0cm 0pt; TEXT-ALIGN: left; mso-layout-grid-align: none" align=left>Set OpenFeatureClass = pFeatureClass<p></p></P> <P 0cm 0cm 0pt; TEXT-ALIGN: left; mso-layout-grid-align: none" align=left>Exit Function<p></p></P> <P 0cm 0cm 0pt; TEXT-ALIGN: left; mso-layout-grid-align: none" align=left>ErrorHandler:<p></p></P> <P 0cm 0cm 0pt; TEXT-ALIGN: left; mso-layout-grid-align: none" align=left>MsgBox Err.Description<p></p></P> <P 0cm 0cm 0pt; TEXT-ALIGN: left; mso-layout-grid-align: none" align=left>End Function<p></p></P> <P 0cm 0cm 0pt; TEXT-ALIGN: left; mso-layout-grid-align: none" align=left>Private Sub UIButtonControl1_Click()<p></p></P> <P 0cm 0cm 0pt; TEXT-ALIGN: left; mso-layout-grid-align: none" align=left>On Error GoTo ErrorHandler:<p></p></P> <P 0cm 0cm 0pt; TEXT-ALIGN: left; mso-layout-grid-align: none" align=left>Dim pFeatureClass As IFeatureClass<p></p></P> <P 0cm 0cm 0pt; TEXT-ALIGN: left; mso-layout-grid-align: none" align=left>Set pFeatureClass = OpenFeatureClass()<p></p></P> <P 0cm 0cm 0pt; TEXT-ALIGN: left; mso-layout-grid-align: none" align=left>EditFeature pFeatureClass<p></p></P> <P 0cm 0cm 0pt; TEXT-ALIGN: left; mso-layout-grid-align: none" align=left>Exit Sub<p></p></P> <P 0cm 0cm 0pt; TEXT-ALIGN: left; mso-layout-grid-align: none" align=left>ErrorHandler:<p></p></P> <P 0cm 0cm 0pt; TEXT-ALIGN: left; mso-layout-grid-align: none" align=left>MsgBox Err.Description<p></p></P> <P 0cm 0cm 0pt; TEXT-ALIGN: left; mso-layout-grid-align: none" align=left>End Sub<p></p></P> <P> </P> |
|
9楼#
发布于:2006-05-23 10:17
为什么大家不看看ESRI的samples呢
|
|
|
上一页
下一页