zoukankan      html  css  js  c++  java
  • 如何用代码设置图层在特定比例尺下显示

    Option Explicit
    Implements ICommand
    Implements ICommandSubType
    Private m_pHookHelper As IHookHelper
    Private m_pMapControl As IMapControl3
    Private m_lSubType As Long
    Private Sub Class_Initialize()  
      Set m_pHookHelper = New HookHelper  
    End Sub
    Private Sub Class_Terminate()  
      Set m_pHookHelper = Nothing  
    End Sub
    Private Property Get ICommand_Enabled() As Boolean  
      Dim bEnabled As Boolean
      bEnabled = True
      Dim pLayer As ILayer
      Set pLayer = m_pMapControl.CustomProperty
      If (m_lSubType = 3) Then
        If (pLayer.MaximumScale = 0) And (pLayer.MinimumScale = 0) Then bEnabled = False
      End If
        ICommand_Enabled = bEnabled
      End Property
    Private Property Get ICommand_Checked() As Boolean  
      ICommand_Checked = False  
    End Property
    Private Property Get ICommand_Name() As String
        ICommand_Name = "ScaleThresholds"  
    End Property
    Private Property Get ICommand_Caption() As String  
      If (m_lSubType = 1) Then
        ICommand_Caption = "Set Maximum Scale"
      ElseIf (m_lSubType = 2) Then
        ICommand_Caption = "Set Minimum Scale"
      Else
        ICommand_Caption = "Remove Scale Thresholds"
      End If
    End Property
    Private Property Get ICommand_Tooltip() As String  
      'Not implemented  
    End Property
    Private Property Get ICommand_Message() As String  
      'Not implemented  
    End Property
    Private Property Get ICommand_HelpFile() As String
        'Not implemented  
    End Property
    Private Property Get ICommand_HelpContextID() As Long  
      'Not implemented  
    End Property
    Private Property Get ICommand_Bitmap() As esriSystem.OLE_HANDLE
        'Not implemented
    End Property
    Private Property Get ICommand_Category() As String
        'Not implemented
      End Property
    Private Sub ICommand_OnCreate(ByVal hook As Object)
      Set m_pHookHelper.hook = hook
      Set m_pMapControl = m_pHookHelper.hook
      End Sub
    Private Sub ICommand_OnClick()
        Dim pLayer As ILayer
      Set pLayer = m_pMapControl.CustomProperty
      If (m_lSubType = 1) Then pLayer.MaximumScale = m_pMapControl.MapScale
      If (m_lSubType = 2) Then pLayer.MinimumScale = m_pMapControl.MapScale
      If (m_lSubType = 3) Then
        pLayer.MaximumScale = 0
        pLayer.MinimumScale = 0
      End If
      m_pMapControl.Refresh esriViewDrawPhase.esriViewGeography
    End Sub
  • 相关阅读:
    最全面的iOS和Mac开源项目和第三方库汇总
    15 个 Android 通用流行框架大全
    Android中常用的优秀开源框架
    iOS中拉伸图片的几种方式
    iOS View自定义窍门——UIButton实现上显示图片,下显示文字
    Java Queue的使用
    java用volatile或AtomicBoolean实现高效并发处理 (只初始化一次的功能要求)
    android开发音乐播放器--Genres和Art album的获取
    一个神奇的控件——Android CoordinatorLayout与Behavior使用指南
    在CodeBlocks 开发环境中配置使用OpenCV (ubuntu系统)
  • 原文地址:https://www.cnblogs.com/zhangjun1130/p/1409499.html
Copyright © 2011-2022 走看看