ABAP:為Table Control建立Context Menu(轉老宋)
怎樣為Table Control建立一個右鍵選單(Context Menu),大致步驟如下:
1,建立一個GUI Status
在SE80中點選程式名,並點選右鍵的建立,找到GUI Status。
它與普通選單欄的定義沒什麼不同,但是Status Type必須選擇Context Menu,假設命名為ST_CTMENU。
2,設定TabCtrl的Context Menu Form
建立一個Table Control,隨之在Screen Layout上雙擊TabCtrl的右上角,將彈出TabCtrl的屬性設定。
在Context Menu Form這裡,填入ON_CTMENU_TAB1。這是個Subroutine的名稱。
程式執行時,當使用者在Table Control範圍內點選右鍵,系統將自動呼叫該Subroutine。
3,彈出右鍵選單
當使用者右擊滑鼠後,程式可以載入在步驟一中預設定的選單,系統將自動在介面顯示。
FORM. on_ctmenu_tab1 USING po_menu TYPE REF TO cl_ctmenu.
CALL METHOD cl_ctmenu=>load_gui_status
EXPORTING
program = sy-repid
status = 'ST_CTMENU'
menu = po_menu
EXCEPTIONS
OTHERS = 9.
IF sy-subrc = 0.
MESSAGE 'GUI Status loaded.' TYPE 'S'.
ENDIF.
ENDFORM. " ON_CTMENU_TAB1
CALL METHOD cl_ctmenu=>load_gui_status
EXPORTING
program = sy-repid
status = 'ST_CTMENU'
menu = po_menu
EXCEPTIONS
OTHERS = 9.
IF sy-subrc = 0.
MESSAGE 'GUI Status loaded.' TYPE 'S'.
ENDIF.
ENDFORM. " ON_CTMENU_TAB1
4,響應具體事件
上面的步驟僅僅是彈出右鍵選單,而使用者可能在Context Menu上選擇某個功能。
使用者選擇某具體功能的操作,與點選介面上某按鈕的結果是一樣的,將觸發Screen的某Function Code。
該Function Code在步驟一中定義Context Menu時就一塊定義了。
實際上,Screen上的Text Field,Input/Output Field,Box,也都可以設定右鍵選單(Context Menu),設定步驟跟Table Control一模一樣。
來自 “ ITPUB部落格 ” ,連結:http://blog.itpub.net/16794144/viewspace-676386/,如需轉載,請註明出處,否則將追究法律責任。
相關文章
- 如何建立stacking context?Context
- 安裝anaconda提示建立menu失敗
- 關於使用 Vue 實現 Context-Menu 的思考與總結VueContext
- layui將table轉化表單顯示(即table.render轉為表單展示)UI
- 利用poi將Html中table轉為ExcelHTMLExcel
- sap table 分為三種型別(轉)型別
- Android學習筆記(建立Menu,Intent的使用)Android筆記Intent
- GLOBAL TEMPORARY TABLE(轉)
- oracle cache table(轉)Oracle
- Oracle Pipelined Table(轉)Oracle
- JavaScript動態建立table表格JavaScript
- ABAP WORKFLOW工作流建立(一)
- Oracle Table建立引數說明Oracle
- Oracle Pipelined Table Functions(轉)OracleFunction
- 使用ABAP建立QR Code(二維碼)
- Flutter中實現無Context跳轉FlutterContext
- 如何使用ABAP程式碼建立SAP Product CategoryGo
- Ex-menu
- Go:context.ContextGoContext
- SAP Hybris的型別系統更改和ABAP的LOAD_PROGRAM_TABLE_MISMATCH型別
- 為什麼你應該放棄React老的Context API用新的Context APIReactContextAPI
- Oracle 12.2之後ALTER TABLE .. MODIFY轉換非分割槽表為分割槽表Oracle
- 如何給 SAP ABAP SEGW 開發的 OData 服務新增 Access-Control-Allow-Origin 響應頭
- 為什麼ABAP整型的1轉成string之後,後面會多個空格
- ContextContext
- Arthas實踐–獲取到Spring Context,然後為所欲為SpringContext
- Qt Application Menu In Window and MacQTAPPMac
- flink stream轉table POJO物件遇到的坑POJO物件
- [20220610][轉載]Is my table marked for archive.txtHive
- 一步步建立ABAP post exit增強
- 使用ABAP程式碼給SAP CRM Business object建立附件AttachmentObject
- go 上下文:context.ContextGoContext
- 邏輯STANDBY建立中碰到ORA-16146: standby destination control file enqueue unavailableENQAI
- Ascend2:為潛在客戶轉化建立關係
- MAC電腦Command鍵如何調換為Control鍵Mac
- SAP ABAP轉型,我的幾點建議
- 動態建立具有刪除行按鈕的table表格
- Redshift建立外部架構external schema和外部表external table架構
- 《Lua-in-ConTeXt》02:ConTeXt 計算機Context計算機