欢迎来到萧静默的博客

书山有路勤为径,学海无涯苦作舟。

ALV 按钮事件后自动刷新列宽度

WHEN 'SCRAP'."按钮事件

      PERFORM SAVE_DATA.
      PERFORM RE_ALV."刷新ALV
FORM RE_ALV.
  DATA:LV_GRID   TYPE REF TO CL_GUI_ALV_GRID,
       LS_LAYOUT TYPE LVC_S_LAYO."这一句很关键
  CALL FUNCTION 'GET_GLOBALS_FROM_SLVC_FULLSCR'
    IMPORTING
      E_GRID = LV_GRID.
* 获取ALV变化过后的布局参数
  CALL METHOD LV_GRID->GET_FRONTEND_LAYOUT
    IMPORTING
      ES_LAYOUT = LS_LAYOUT.

* 重新回写自适应宽度
  LS_LAYOUT-CWIDTH_OPT = 'X'.
* 回写ALV变化过后的布局参数
  CALL METHOD LV_GRID->SET_FRONTEND_LAYOUT
    EXPORTING
      IS_LAYOUT = LS_LAYOUT.

* 刷新ALV布局
  CALL METHOD LV_GRID->REFRESH_TABLE_DISPLAY.

ENDFORM.

上面是FM-ALV的刷新。

下面是OO-ALV的刷新。

自行百度 ,网上很多。。。

posted @ 2020-08-18 14:20  萧静默  阅读(1144)  评论(0编辑  收藏  举报