ABAP-OOALV-回车事件

本文介绍如何在ABAP中使用OOALV处理回车事件,包括设置事件、定义事件接收器和注册事件方法的具体步骤,以及如何刷新表格显示。

摘要生成于 C知道 ,由 DeepSeek-R1 满血版支持, 前往体验 >

ABAP-OOALV-回车事件:

首先要为ALV_GRID设置enter事件:

  CALL METHOD GO_ALV_GRID->REGISTER_EDIT_EVENT
    
EXPORTING
      I_EVENT_ID CL_GUI_ALV_GRID=>MC_EVT_ENTER
    
EXCEPTIONS
      ERROR      1
      OTHERS     2.

 

然后编写事件接收器:
CLASS CL_EVENT_RECEIVER DEFINITION.
  PUBLIC SECTION.
   " ENTE时触发
    METHODS HANDLE_ENTER
           
FOR EVENT DATA_CHANGED_FINISHED OF CL_GUI_ALV_GRID
        
IMPORTING E_MODIFIED ET_GOOD_CELLS.

  PRIVATE SECTION.
ENDCLASS.                    "CL_EVENT_RECEIVER DEFINITION

 

CLASS CL_EVENT_RECEIVER IMPLEMENTATION.
  实现ENTER 事件方法
  METHOD HANDLE_ENTER.
    DATA GS_LAYOUT_ALV TYPE LVC_S_LAYO.
    DATA LV_STABLE TYPE LVC_S_STBL.   

    PERFORM FOM_REFRESH .

    LV_STABLE-ROW '1'.
    LV_STABLE-COL '1'.

    GS_LAYOUT_ALV-CWIDTH_OPT 'X'.    

    CALL METHOD GO_ALV_GRID->SET_FRONTEND_LAYOUT
      
EXPORTING
        IS_LAYOUT GS_LAYOUT_ALV.

    CALL METHOD GO_ALV_GRID->REFRESH_TABLE_DISPLAY
      
EXPORTING
        IS_STABLE LV_STABLE.

      CALL METHOD CL_GUI_CONTROL=>SET_FOCUS
        
EXPORTING
          CONTROL GO_ALV_GRID.
      CALL METHOD CL_GUI_CFW=>FLUSH.

  ENDMETHOD.                    "HANDLE_MODIFY

ENDCLASS.                    "cl_event_receiver IMPLEMENTATION

 

最后去注册事件方法:

SET HANDLER LO_EVENT->HANDLE_ENTER    FOR GO_ALV_GRID.

 

评论 1
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值