首页 > 代码库 > TABLE CONTROL隐藏列和固定列的实现

TABLE CONTROL隐藏列和固定列的实现

一、设置固定列

需求:为了方便对主要关心信息地查看,用户希望TABLE CONTROL左边的一列或者几列在屏幕上固定。针对用户这样子的需求, 我们首先会想到类似与屏幕编辑/可见等字段属性设置,但是此方法行不通。
解决方法:通过设置Table Control自带的属性,定义最左边的某些列不可滚动。在Screen Layout中,双击Table Control的右上角,弹出“表控制”属性,即可设置。如下图所示:

 

二、隐藏列

需求:隐藏TABEL CONTROL的某一列或者多列,其实针对这样子的需求,我们最常想到的就是通过设置字段属性为ACTIVE或INVISIBLE,经过测试,发现,此方法无效

解决方法:通过CODING修改tabctrl-cols下的某字段可见长度。

                 代码如下:

DATA: ls_col LIKE LINE OF ztc_500-cols.

LOOP AT ztc_500-cols INTO ls_col WHERE screen-name = WA_ADD-KOSTL.
  IF l_hide IS INITIAL.
    ls_col-vislength = 6.
  ELSE.
    ls_col-vislength = 0.
  ENDIF.
  MODIFY ztc_500-cols FROM ls_col.
ENDLOOP.

 

添加位置:如下图

 

双击如上图所示的,标记的MODULE,将代码添加,即可!