选择屏幕俩种按钮实现的方式:
《一》 SELECTION-SCREEN: FUNCTION KEY 1,
FUNCTION KEY 2,
FUNCTION KEY 3,
FUNCTION KEY 4,
FUNCTION KEY 5.
使用场景:
1.在选择界面抬头部分显示
使用方法
1.代码顶部做应用TABLES:sscrfields."必须的 否则下边赋值不认 sscrfields
2.初始事件给按钮赋值文本
INITIALIZATION.
sscrfields-functxt_01 = ‘配置表’.
sscrfields-functxt_02 = ‘配置表2’.
”sscrfields-functxt_03 = ‘配置表3’.
MOVE ‘配置表3’ TO sscrfields-functxt_03.
3.按钮ucomm是固定的‘KEY 1 ’是‘FC01’ ,‘KEY 2’ 是‘FC02’ 以此类推到 ‘KEY 7’
触发事件:
AT SELECTION-SCREEN.
CASE sscrfields-ucomm.
WHEN ‘FC01’.
WRITE : ‘FC01’.
WHEN ‘FC02’.
WRITE : ‘FC02’.
WHEN ‘FC03’.
WRITE : ‘FC03’.
WHEN OTHERS.
ENDCASE.
或者
CASE sy-ucomm.
WHEN ‘FC01’.
WRITE : ‘FC01’.
WHEN ‘FC02’.
WRITE : ‘FC02’.
WHEN ‘FC03’.
WRITE : ‘FC03’.
WHEN OTHERS.
ENDCASE.
《二》
SELECTION SCREEN PUSHBUTTON [/] <pos(len)>
USER-COMMAND [MODIF ID ].
SELECTION-SCREEN PUSHBUTTON [/] <pos(len)> USER-COMMAND [MODIF ID ]
<pos(len)>:PUSHBUTTON按钮在屏幕生成的位置与长度。
:PUSHBUTTON按钮的名称,给按钮赋值时要用到名字。
:必须指定的字符代码,当用户在选择屏幕上触发按钮时,被输入到词典对象字段:SSCRFIELDS-UCOMM中。
需要注意的是,必须显式使用语句TABLES引用SSCRFIELDS。否则将会报如下错误:
如果是用 SY-UCOMM 也可以不用 TABLES引用SSCRFIELDS。
之前在别的资料里看到 USER-COMMAND 必须指定最 多为 4 字符的代码,测试过了 这个不是必须的大于4个也是可以的。
例:
SELECTION-SCREEN PUSHBUTTON 1(20) but1 USER-COMMAND search. "
给按钮添加图片和文本在INITIALIZATION事件或者 AT SELECTION-SCREEN OUTPUT.事件中。
INITIALIZATION./ AT SELECTION-SCREEN OUTPUT.
CALL FUNCTION ‘ICON_CREATE’ " 给按钮添加图标和文本
EXPORTING
name = ‘ICON_EXPORT’ " 按钮的图片的名字 ICON_EXPORT
text = ‘导入模版’ "按钮的文本
info = ‘功能’
IMPORTING
result = but1
EXCEPTIONS
OTHERS = 0.
或者
WRITE ICON_OKAY AS ICON TO PUBU2. "给PUBU2按钮添加图标,并且在给按钮赋值之前,否则将会把文字替换。
CONCATENATE PUBU2 ‘My Second Button’ INTO PUBU2 SEPARATED BY SPACE. "给第二个按钮添加赋值描述
或者
直接赋值文本:
MOVE ‘CALL NEXT SCREEN’ TO but1. "给PUBU1按钮赋值描述
或者
but1 = ‘CALL NEXT SCREEN’ .
定义搜索按钮
AT SELECTION-SCREEN.
CASE sy-ucomm.
WHEN ‘SEARCH’.
write:‘’.
WHEN OTHERS.
ENDCASE.
或者
AT SELECTION-SCREEN.
CASE sscrfields-ucomm.
WHEN ‘SEARCH’.
write:‘’.
WHEN OTHERS.
ENDCASE.