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的刷新。

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


免责声明!

本站转载的文章为个人学习借鉴使用,本站对版权不负任何法律责任。如果侵犯了您的隐私权益,请联系本站邮箱yoyou2525@163.com删除。



 
粤ICP备18138465号  © 2018-2025 CODEPRJ.COM