学习ArcObjects 帮助 .NET遇到问题(八)小节复习(一)

一、 IComboBox 接口(SystemUI)
  1. 解释

    ​ 提供对定义 COM 组合框的成员的访问。提供项目下拉列表,并可以选择提供可编辑的输入区域。若要创建组合框,需要在类代码中实现 ICommand 接口和 IComboBox 接口。

  2. 属性和方法

    序号名称描述
    1DropDownHeight 属性组合框的下拉高度
    2DropDownWidth属性组合框的下拉宽度
    3Editable 属性组合框是否可编辑
    4HintText属性设置编辑框中显示的提示
    5OnEditChange 方法在键入编辑框时由系统调用(如果可编辑)
    6OnEnter 方法在编辑框中按下 键时由系统调用(如果可编辑)
    7OnFocus 方法当获得或失去焦点时由系统调用
    8OnSelChange 方法当选择更改时由系统调用
    9ShowCaption 属性指示将此组合框放置在工具栏上时是否显示标题
    10Width 属性组合框的宽度。
    二、ICommand 接口
    1. 解释

      ​ 提供对定义 COM 命令的成员的访问。ICommand 是所有 ArcGIS for Desktop 应用程序的工具条和菜单上显示的大多数自定义(命令)实现的主要界面。有几种类型的命令:

      • 按钮菜单项是最简单的命令类型。按钮通常显示为工具栏上的图标,菜单项显示在菜单中。单击按钮或菜单项时,将执行一个简单的操作。

      • 工具类似于按钮,但它们也需要与应用程序的显示进行交互。“放大”命令是一个很好的工具示例,在重新绘制显示之前,单击或拖动地图上的矩形以更详细地显示地图内容。工具还必须实现 ITool

      • 工具控件是类似于组合框或编辑框的命令。组合框允许您从下拉列表中选择一个选项。

        ​ 创建新的 COM 命令时,必须实现 类代码中的 ICommand 接口。此接口确定 简单命令(如按钮和 菜单项。例如,ICommand 接口设置命令 属性,如标题、名称、类别、位图、状态栏 消息、工具提示、帮助上下文 ID 和帮助文件、启用状态和 已检查状态。它还定义了命令时发生的操作 被点击。

    2. 属性和方法

      序号名称描述
      1Bitmap 属性用作此命令图标的位图
      2Caption 属性此命令的标题
      3Category 属性与此命令关联的类别的名称
      4Checked 属性指示是否选中此命令
      5Enabled 属性指示是否启用此命令
      6Message 属性此命令的状态栏消息
      7Name 属性这个commmand的名字
      8OnClick 方法单击此命令时发生
      9OnCreate 方法创建此命令时发生
      10Tooltip 属性此命令的工具提示

    3.常用代码

    • 下面的代码获取应用程序的挂钩。

       private IApplication m_app;
       public void OnCreate(object hook)
       {
           // The hook argument is a pointer to Application object.
           m_app = hook as IApplication;
       }
      
    • 以下示例仅在以下情况下启用该命令 至少加载到 ArcMap 中的一个数据图层。

      private IApplication m_pApp;      //ArcMap application
       public bool Enabled() 
       {
           //pApp is set in OnCreate    
           IMxDocument mxDoc = m_pApp.Document As IMxDocument;
           int layerCount = pMxDoc.FocusMap.LayerCount;
           
           if (pLayerCount >  0)
               return true;
           else
               return false;
       }
      
    三、IComboBoxHook 接口
    1. 说明

      提供对系统提供的组合框进行编程的方法。

    2. 属性和方法

      序号名称描述
      1Add 方法向组合框中添加元素
      2Clear 方法清除所有项目的组合框
      3Hook 属性获取应用程序挂钩
      4Remove 方法从组合框中删除元素
      5Select 方法在组合框中选择一个项目
      6Selected 属性获取组合框中的当前选定项cookie
      7Value 属性设置编辑控件的值字符串
    四、ICommandSubType 接口
    1. 说明

      ​ 提供对定义子类型化命令的成员的访问。ICommandSubType 接口用于在单个类中具有多个命令时。您将在类中实现 ICommand 和 ICommandSubType。使用 ICommandSubType 接口,可以指定有多少个子类型。然后,在实现每个 ICommand 属性中,您将为每个子类型设置属性,而不是多次实现 ICommand 接口。

    2. 属性和方法

      序号名称描述
      1GetCount 方法使用此 CLSID 定义的命令数
      2SetSubType 方法命令的子类型
  • 15
    点赞
  • 16
    收藏
    觉得还不错? 一键收藏
  • 0
    评论
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值