zoukankan      html  css  js  c++  java
  • 如何给ENVI Classic添加菜单(IDL8.3+ENVI5.1)

    1、直接看代码

    ①测试程序1

    PRO MY_EVENT2_DEFINE_BUTTONS, buttonInfo
      COMPILE_OPT IDL2
    
      ENVI_DEFINE_MENU_BUTTON, buttonInfo, $
        value = 'caidan', uvalue = '哈哈', $
        event_pro = 'MY_EVENT2', $
        ref_value = 'Help', position = 'last' 
    END
    
    PRO MY_EVENT2,EV
        FILE=DIALOG_PICKFILE()
        RES= DIALOG_MESSAGE(FILE, /INFORMATION)
    END

    ②测试程序2

    PRO MY_PROCESS_DEFINE_BUTTONS, buttonInfo
      COMPILE_OPT IDL2
      ENVI_DEFINE_MENU_BUTTON, buttonInfo, $
        value = 'My Menu', /menu, $
        ref_value = 'Basic Tools', $
        /sibling, position = 'after'
    
      ENVI_DEFINE_MENU_BUTTON, buttonInfo, $
        value = 'Option 1', uvalue = 'option 1', $
        event_pro = 'my_process', $
        ref_value = 'My Menu', position = 'last'
    
      ENVI_DEFINE_MENU_BUTTON, buttonInfo, $
        value = 'Option 2', uvalue = 'option 2', $
        event_pro = 'my_process', $
        ref_value = 'My Menu', position = 'last'
    
      ENVI_DEFINE_MENU_BUTTON, buttonInfo, $
        value = 'Option 3', uvalue = 'option 3', $
        event_pro = 'my_process', $
        ref_value = 'My Menu', position = 'last', $
        /separator
    END
    PRO MY_PROCESS, event
      COMPILE_OPT IDL2
      PRINT, 'Running the process'
    END
    

    ③示例代码3

    PRO MY_EVENT2_DEFINE_BUTTONS, buttonInfo
      COMPILE_OPT IDL2
    
      ENVI_DEFINE_MENU_BUTTON, buttonInfo, $
        value = 'op4', uvalue = '哈哈', $
        event_pro = 'MY_EVENT2', $
        ref_value = 'My Menu', position = 'last' 
    END
    
    PRO MY_EVENT2,EV
        FILE=DIALOG_PICKFILE()
        RES= DIALOG_MESSAGE(FILE, /INFORMATION)
    END

    本例请在实验实例2之后在运行,因为在执行完成实例2之后才会有My Menu菜单,此例旨在为My Menu菜单添加一个新的在菜单op4,实验结果并未成功添加,原因在于

    MY_EVENT2和MY_PROCESS的先后顺序无法指定。

    2、重置、编译,在控制台输入save,filename='E: empmy_process.sav',/rout

    3、生成的my_process.sav拷贝到C:Program FilesExelisENVI51classicsave_add目录下

    4、重启ENVI

  • 相关阅读:
    ELK初学搭建(logstash)
    认识基本的UI资源
    C# 枚举器
    NGUI---使用脚本控制聊天系统的内容显示,输入事件交互
    NGUI----简单聊天系统一
    C# 类型、存储和变量
    C# Execl表格文件转xml文件
    网易云音乐如何从0到亿级用户整理笔记
    如何成为一名完美的传道授业解惑者
    grouping sets,cube,rollup,grouping__id,group by
  • 原文地址:https://www.cnblogs.com/rockman/p/3938723.html
Copyright © 2011-2022 走看看