设置ALV单元格可编辑状态
2017-07-11 10:05
274 查看
在使用ALV显示列表的过程中,我们可以使用IT_FIELDCAT参数设置某一个字段的可编辑状态。但是,要设置具体的单元格的可编辑状态对于对ALV不是很了解的人来说是一个头大的问题。
具体单元格可编辑状态设置的主要思想:首先通过EIDT参数设置列为可编辑状态;其次对输出内表进行循环将不需要编辑的行设置为不可编辑状态,如此单元格的可编辑属性设置完毕。下面粘贴简要代码。
部分代码:
DATA: BEGIN OF ITAB OCCURS 0,
ZQRFH_ICON TYPE STRING,
ZLDATE TYPE ZLDATE,
ZLUSR TYPE ZLUSR,
K TYPE STRING,
FIELD_STYLE TYPE LVC_T_STYL, " 为内表添加设置编辑状态所需的字段
END OF ITAB.
S_FIELDCAT-FIELDNAME = 'ZBQFS'. " 设置列可编辑
S_FIELDCAT-EDIT = 'X'.
APPEND S_FIELDCAT TO T_FIELDCAT.
DATA STYLELIN TYPE LVC_S_STYL.
LOOP AT ITAB.
IF ITAB-ZXMDM = 'D' OR ITAB-ZXMDM = 'F' OR ITAB-ZXMDM = 'H'.
STYLELIN-FIELDNAME = 'ZBQFS'. " 需要编辑的列名
STYLELIN-STYLE = CL_GUI_ALV_GRID=>MC_STYLE_DISABLED. " 设置为不可编辑状态
APPEND STYLELIN TO ITAB-FIELD_STYLE.
CLEAR STYLELIN.
MODIFY ITAB.
ENDIF.
endloop.
X_LAYOUT-STYLE_FNAME = 'FIELD_STYLE'. " 将内表中的字段名存入显示格式
CALL FUNCTION 'REUSE_ALV_GRID_DISPLAY_LVC'"调用函数
![](http://img.baidu.com/hi/jx/j_0043.gif)
EXPORTING
IT_FIELDCAT_LVC = T_FIELDCAT
IS_LAYOUT_LVC = X_LAYOUT
TABLES
T_OUTTAB = ITAB_LB
EXCEPTIONS
PROGRAM_ERROR = 1
OTHERS = 2.
具体单元格可编辑状态设置的主要思想:首先通过EIDT参数设置列为可编辑状态;其次对输出内表进行循环将不需要编辑的行设置为不可编辑状态,如此单元格的可编辑属性设置完毕。下面粘贴简要代码。
部分代码:
DATA: BEGIN OF ITAB OCCURS 0,
ZQRFH_ICON TYPE STRING,
ZLDATE TYPE ZLDATE,
ZLUSR TYPE ZLUSR,
K TYPE STRING,
FIELD_STYLE TYPE LVC_T_STYL, " 为内表添加设置编辑状态所需的字段
END OF ITAB.
S_FIELDCAT-FIELDNAME = 'ZBQFS'. " 设置列可编辑
S_FIELDCAT-EDIT = 'X'.
APPEND S_FIELDCAT TO T_FIELDCAT.
DATA STYLELIN TYPE LVC_S_STYL.
LOOP AT ITAB.
IF ITAB-ZXMDM = 'D' OR ITAB-ZXMDM = 'F' OR ITAB-ZXMDM = 'H'.
STYLELIN-FIELDNAME = 'ZBQFS'. " 需要编辑的列名
STYLELIN-STYLE = CL_GUI_ALV_GRID=>MC_STYLE_DISABLED. " 设置为不可编辑状态
APPEND STYLELIN TO ITAB-FIELD_STYLE.
CLEAR STYLELIN.
MODIFY ITAB.
ENDIF.
endloop.
X_LAYOUT-STYLE_FNAME = 'FIELD_STYLE'. " 将内表中的字段名存入显示格式
CALL FUNCTION 'REUSE_ALV_GRID_DISPLAY_LVC'"调用函数
![](http://img.baidu.com/hi/jx/j_0043.gif)
EXPORTING
IT_FIELDCAT_LVC = T_FIELDCAT
IS_LAYOUT_LVC = X_LAYOUT
TABLES
T_OUTTAB = ITAB_LB
EXCEPTIONS
PROGRAM_ERROR = 1
OTHERS = 2.
相关文章推荐
- 设置ALV单元格可编辑状态
- 怎样将DevExpress中的GridView的某一个单元格的状态设置为编辑或不可编辑
- ABAP 将单元格设置编辑状态 FORM
- [VB.NET]VB2005,DataGridView如何设置当前的单元格里的内容处于编辑状态.
- QTableView自动设置单元格的编辑状态
- jqgrid动态设置某个单元格进入编辑状态
- jqGrid设置可编辑单元格为不可编辑状态
- HRESULT: 0x800A03EC -----当EXCEL单元格处于编辑状态时
- 如何设置'REUSE_ALV_GRID_DISPLAY'的单个单元格的颜色
- DataGrid编辑状态添加DropDownList控件模板列、设置样式
- 如何设置'REUSE_ALV_GRID_DISPLAY'的单个单元格的颜色
- 因为单元格处于编辑状态,OFFICE控件报IO异常 之 变通解决之道
- 如何获取 GridView 编辑状态下单元格里的值?
- 2. 如何获取 GridView 编辑状态下单元格里的值?
- 如何在DBGrid中实现某一列的单元格进入编辑状态,其它列的单元格保持只读状态
- rcp的table单元格设置为可编辑
- 如何设置REUSE_ALV_GRID_DISPLAY'的单个单元格的是否可以输入[转]
- 如何设置'REUSE_ALV_GRID_DISPLAY'的单个单元格的颜色
- 设置dataGrid的单元格可编辑
- 如何设置'REUSE_ALV_GRID_DISPLAY'的单个单元格的颜色