anigold
路人甲
路人甲
  • 注册日期2004-01-31
  • 发帖数21
  • QQ
  • 铜币171枚
  • 威望0点
  • 贡献值0点
  • 银元0个
阅读:1634回复:0

用IIDentifyObj 闪烁时异常 "尚未实现"

楼主#
更多 发布于:2006-11-28 14:29
<P>代码如下:   </P>
<P>ESRI.ArcGIS.Geometry.IEnvelope env = new ESRI.ArcGIS.Geometry.EnvelopeClass();<BR>   env = m_mapCtrl.ActiveView.Extent;<BR>   env.Height = env.Width = 100;<BR>   env.CenterAt( m_mapCtrl.ActiveView.ScreenDisplay.DisplayTransformation.ToMapPoint(X,Y) );</P>
<P>   for( int i=0;i<m_mapCtrl.Map.LayerCount;++i )<BR>   {<BR>    ESRI.ArcGIS.Carto.ILayer layer = m_mapCtrl.get_Layer( i );<BR>    if( layer.Visible == false )<BR>     continue;</P>
<P>    ESRI.ArcGIS.Carto.IIdentify identify = layer as ESRI.ArcGIS.Carto.IIdentify;<BR>    if( identify == null )<BR>    {<BR>     System.Diagnostics.Debug.WriteLine( "\t图层无法转换为有效的查询接口"  );     <BR>     continue;<BR>    }</P>
<P>    ESRI.ArcGIS.esriSystem.IArray array = identify.Identify( env );<BR>    if( array == null || array.Count == 0 )<BR>    {<BR>         continue;<BR>    }<BR>    </P>
<P>    ESRI.ArcGIS.Carto.IFeatureIdentifyObj fiobj = null;<BR>    for( int j=0;j<array.Count;++j )<BR>    {<BR>     fiobj = array.get_Element(j) as ESRI.ArcGIS.Carto.IFeatureIdentifyObj;<BR>     ESRI.ArcGIS.Carto.IIdentifyObj iobj = fiobj as ESRI.ArcGIS.Carto.IIdentifyObj;</P>
<P>     try<BR>     { <BR>      iobj.Flash( m_mapCtrl.ActiveView.ScreenDisplay );//这一句发生异常<BR>     }<BR>     catch( Exception ex )<BR>     {<BR>      System.Windows.Forms.MessageBox.Show( ex.ToString() );<BR>     }<BR>    }<BR></P>
<P>请大家指点!:)</P>
喜欢0 评分0
游客

返回顶部