lilysunny
路人甲
路人甲
  • 注册日期2003-08-18
  • 发帖数160
  • QQ
  • 铜币499枚
  • 威望0点
  • 贡献值0点
  • 银元0个
阅读:2601回复:4

(Ao菜鸟一问)如何在AO实现此功能!

楼主#
更多 发布于:2003-09-16 13:22
如何在VBA中实现查询到一个目标后,将地图显示范围移动到该目标处,然后该目标闪烁?

我想对于高手这一定不是难事,但由于我时间太短没有时间学Ao的接口图,急需此功能,希望各位帮帮忙,不然也不会问了!谢谢!<img src="images/post/smile/dvbbs/em11.gif" />
喜欢0 评分0
黑夜给了你黑色的眼睛,你却拿它来翻白眼!
lilysunny
路人甲
路人甲
  • 注册日期2003-08-18
  • 发帖数160
  • QQ
  • 铜币499枚
  • 威望0点
  • 贡献值0点
  • 银元0个
1楼#
发布于:2003-09-16 16:31
自己搞定了,给大家看看!
    Dim mxDoc As IMxDocument
    Dim pMap As IMap
    Dim mxActive As IActiveView
    Dim pQueryFltr As IQueryFilter
    Dim pFeatLyr As IFeatureLayer
    Dim pFeatSeln As IFeatureSelection
    Dim pSelSet As ISelectionSet
    Dim pFeatCursor As IFeatureCursor
    Dim pFeature As IFeature
    Dim pExtent As IEnvelope

    Set mxDoc = ThisDocument
    Set pMap = mxDoc.FocusMap
    Set mxActive = mxDoc.ActiveView
    
    Set pFeatLyr = pMap.Layer(0)
    
    Set pQueryFltr = New QueryFilter
    pQueryFltr.WhereClause = ("NAME='" + Trim(CboRouteName.Text) + "'")
    
    Set pFeatSeln = pFeatLyr
    pFeatSeln.SelectFeatures pQueryFltr, esriSelectionResultNew, False

    Set pSelSet = pFeatSeln.SelectionSet
    pSelSet.Search pQueryFltr, True, pFeatCursor
    
    Set pFeature = pFeatCursor.NextFeature

    If Not pFeature Is Nothing Then
        Set pExtent = pFeature.Shape.Envelope
        mxActive.Extent = pExtent
        mxActive.Refresh
    End If
黑夜给了你黑色的眼睛,你却拿它来翻白眼!
举报 回复(0) 喜欢(0)     评分
游客

返回顶部