我身在江湖,江湖却仍没有关于我的传说!------挨踢行业的小人物ABAP 自学笔记之ALV 自定义按钮1ALV 中自定义按钮----李宝勋使用alv 的时候,我们经常性需要添加自定义按钮,实现用户单击事件调用,这里介绍通过GUI 状态增加按钮。假如你定义了报表程序ZMMR3009,里面已经编写好了alv 的实现函数:如下:CALL FUNCTION'REUSE_ALV_GRID_DISPLAY'EXPORTINGI_CALLBACK_PROGRAM= W_REPID"当前程序I_SAVE= ''IS_LAYOUT= I_LAYOUT "子函数layout_build填充的格式定义IT_FIELDCAT= I_FIELDCAT_ALV[]"子函数fields填充的各列TABLEST_OUTTAB= IT_BLNTDEXCEPTIONSPROGRAM_ERROR= 1OTHERS= 2.在你的程序里找到函数:‘REUSE_ALV_GRID_DISPLAY’,双击这个函数名,打开这个函数代码窗口:如下图:我身在江湖,江湖却仍没有关于我的传说!------挨踢行业的小人物ABAP自学笔记之ALV 自定义按钮2点击工具栏上的‘Dispaly Object List’按钮,打开对象浏览器窗口,如下图:展开函数组:SLVC_FULLSCREEN,并选中GUI状态下的:STANDARD_FULLSCREEN项,如下图:右键单击,选择copy选项 ,在打开的窗体中设置如下,将 alv 的gui 状态复制到你的程序里,程序:ZMMR3009 是的目标程序,状态:STANDARD_004 是你新建的gui 名称,如下图:我身在江湖,江湖却仍没有关于我的传说!------挨踢行业的小人物ABAP自学笔记之 ALV自定义按钮3然后点击'Copy',直到弹出的窗体全部消失,然后在你的程序里添加如下代码:CONSTANTSCNS_PF_STATUSTYPESLIS_FORMNAMEVALUE'ALV_PF_STATUS'."alv自定义按钮CONSTANTSCNS_USER_COMMANDTYPESLIS_FORMNAMEVALUE'ALV_USER_COMMAND'."alv自定义按钮响应事件上面代码写到 alv变量定义的代码下面,下面添加设置 GUI状态代码:FORMalv_pf_statusUSINGrt_extabTYPEslis_t_extab.SETPF-STATUS'STANDARD_004'EXCLUDINGrt_extab.ENDFORM.创建按钮开始:双击'STANDARD_004',打开如下界面,找个空白的单元格先添加个'|',如下图:我身在江湖,江湖却仍没有关于我的传说!------挨踢行业的小人物ABAP自学笔记之 ALV自定义按钮4然后在下个单元格输入名称:print,,双击这个名称弹出界面如下图:确定后,在界面里设置按钮文本和图标等信息,如下图:我身在江湖,江湖却仍没有关于我的传说!------挨踢行业的小人物ABAP自学笔记之ALV自定义按钮5确定后,如下图选择功能键后,确定后,如下图输入图标文字信息,单击确定,然后点击保存...