ABAP grid的alv的checkbox列怎么选择不了啊

CALLFUNCTION'REUSE_ALV_GRID_DISPLAY'的ALV有一CHECKBOX列,现在有多行数据,但点击某行的CHECKBOX列时,只是选择到该行,... CALL FUNCTION 'REUSE_ALV_GRID_DISPLAY' 的ALV有一CHECKBOX列,现在有多行数据,但点击某行的CHECKBOX列时,只是选择到该行,CHECKBOX并没有勾选到,也没办法实现全选,要怎么修改啊 展开
 我来答
静水逐花
2012-10-26 · TA获得超过1032个赞
知道小有建树答主
回答量:733
采纳率:0%
帮助的人:482万
展开全部
但点击某行的CHECKBOX列时,只是选择到该行,CHECKBOX并没有勾选到

内表数据已经更新 但是界面没刷新么?

如果是这样子,在你的usercommand事件里面
增加这个u_selfield-refresh = 'X'.刷新或者调用refresh_table_display这个方法刷新

要实现全选,自己在status上面增加一个全选按钮
然后在usercommand里面针对该事件的代码处理
loop整个内表 checkbox的值全部给'X' 然后 利用上面的方式刷新界面
这样子内表里面checkbox那一列的值是全部勾选了的 同时界面看到的也是全部打×
追问
你说的全选我已经实现了,
我之前的问题是没把CHECKBOX那列设为可编辑状态,
但现在加了fieldcatalog-edit = 'X'.后,在最前面多了个行选择列,要怎么去掉那列呢

还有个问题就是我勾选某行的CHECKBOX列,然后点击其他按钮,
但是内表里记录CHECKBOX的那个字段没被更新啊,要怎么解决呢
追答
form user_command using u_ucomm like sy-ucomm u_selfield type slis_selfield. 

DATA: lr_grid TYPE REF TO cl_gui_alv_grid.
CALL FUNCTION 'GET_GLOBALS_FROM_SLVC_FULLSCR'
IMPORTING
e_grid = lr_grid.
CALL METHOD lr_grid->check_changed_data.
u_selfield-refresh = 'X'.
CASE U_UCOMM.

ENDCASE.

endform.

至于你说的fieldcatalog-edit = 'X'之后,会一列选择列 我表示莫名其妙
ALV所有呈现出来的列 都在fieldcat里面有一行数据 这一句代码是将一列设置为可编辑
怎么会莫名其妙多一列
isunflowerzz
2012-10-24 · 超过12用户采纳过TA的回答
知道答主
回答量:35
采纳率:0%
帮助的人:29.8万
展开全部
根据你的描述应该是没有把CHECKBOX设置为可编辑状态,
解决办法定义:fieldcatalog-edit = 'X'.
希望能够帮助你解决问题!
追问
加了fieldcatalog-edit = 'X'.后,在最前面多了个行选择列,要怎么去掉那列呢
本回答被网友采纳
已赞过 已踩过<
你对这个回答的评价是?
评论 收起
majie4289889
2012-10-24 · TA获得超过117个赞
知道答主
回答量:74
采纳率:0%
帮助的人:27.8万
展开全部
用JS实现试试
已赞过 已踩过<
你对这个回答的评价是?
评论 收起
收起 1条折叠回答
推荐律师服务: 若未解决您的问题,请您详细描述您的问题,通过百度律临进行免费专业咨询

为你推荐:

下载百度知道APP,抢鲜体验
使用百度知道APP,立即抢鲜体验。你的手机镜头里或许有别人想知道的答案。
扫描二维码下载
×

类别

我们会通过消息、邮箱等方式尽快将举报结果通知您。

说明

0/200

提交
取消

辅 助

模 式