• 如何用代码设置图层在特定比例尺下显示


    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
  • 相关阅读:
    LINQ 笔记
    关于:last-child的一点见解
    webpack 配置IP 和端口号
    echarts.制作中国地图,点击对应的省市链接到该省份的详细介绍
    关于offsetWidth innerWidth的使用
    关于mobiscroll插件的使用
    关于取url或者微信中参数的js
    上传图片
    使用默认图片替代某张图为空时的情况
    在数组中计算和的最大最小值
  • 原文地址:https://www.cnblogs.com/zhangjun1130/p/1409499.html
Copyright © 2020-2023  润新知