o_哈哈o 发表于 2015-9-18 13:19:57

SAP Control framework–CL_CTMENU

  引用:翱翔云天
    1.1 CL_CTMENU
  1.1.1 定义
  这个就是右键菜单了,可以分成两种,一种是静态的,一种是动态创建的。
  静态的就是在程序中已经预先定义,也就是通过se41菜单编辑器定义的
  动态的是指在程序中,对某一个控件使用时,再定义
  
  1.1.2 属性
  主要有两个静态变量
  LOAD_OBJECTS
  types:
  begin of l_objects,
  program type program, “程序名
  status type gui_status, “status
  reference type ref to cl_ctmenu_load, “参照status
  end of l_objects .
  LOAD_OBJECTS TYPE standard table of l_objects .
  SOURCE_OBJECTS
  BEGIN OF S_OBJECTS,
  PROGRAM TYPE PROGRAM,
  REFERENCE TYPE REF TO CL_CTMENU_SOURCE,
  END OF S_OBJECTS .
  SOURCE_OBJECTS TYPE standard table of S_OBJECTS.
  1.1.3 方法
  LOAD_GUI_STATUS 使用一个预先定义的status
  PROGRAM Program name
  STATUS Status
  DISABLE Inactive functions
  MENU Menu Reference
  说明:这个方法非常常用,主要是可以动态的指定你想使用的status,它可以存在于其他的程序中,当然也可以使用其他程序中已经定义好的CL_CTMENU的status.
  ADD_FUNCTION 添加function
  FCODE Function code
  TEXT Function text
  ICON Icons
  FTYPE Functional type
  DISABLED Inactive
  HIDDEN Invisible
  CHECKED Selected
  说明:这个就是最基本的方法了,当你使用context menu的时候,总归要定义function code,那么就一定要使用这个方法了。
  ADD_MENU 添加一个菜单项
  MENU Menu to be Added
  说明:添加一个菜单,注意这个传入参数MENU的类型是CL_CTMENU,也就是你已经定义了一个context mune,然后把这个context menu添加到新定义的context menu中。
  ADD_SUBMENU 添加一个子菜单项
  MENU Submenu
  TEXT Text
  ICON Icon String
  DISABLED Inactive
  HIDDEN Invisible
  ADD_SEPARATOR 添加一个分隔
  HIDE_FUNCTIONS/ SHOW_FUNCTIONS 隐藏/显示function
  FCODES Function code
  DISABLE_FUNCTIONS/ ENABLE_FUNCTIONS 禁用/启用function
  FCODES Function code
  MODIFY_FUNCTION_TEXT 修改function的显示文本
  FCODE Function code
  TEXT Function text
  GET_FUNCTIONS 取得所有的function
  FCODES UI_FUNCATTR Function List
页: [1]
查看完整版本: SAP Control framework–CL_CTMENU