【转载】[SAP ABAP开发技术总结]选择屏幕——按钮、单选复选框

12.6.     按钮、单选复选框、下拉框的FunCode

如果复选框与单选按钮没有设置Function Code,则它们就会像普通的输入框一样,即使状态发生了改变,也不会触发PAI事件

对话屏幕中的按钮、复选框、单选按钮、下拉框的Function Code都是通过屏幕元素 attributes来设置的;选择屏幕中的FunCode则通过USER-COMMAND选项来设置

12.6.1.           选择屏幕中的按钮

SELECTION-SCREEN:PUSHBUTTON 2(12)  but1 USER-COMMAND cli1.
INITIALIZATION.
but1 'Button 1'."可直接设置按钮上的标签文本
AT SELECTION-SCREEN.
  CASE sy-ucomm.
    WHEN 'CLI1'.
  ENDCASE.

12.6.2.           选择屏幕中的单选/复选按钮:点击时显示、隐藏其他屏幕元素

更多请参考动态修改屏幕章节

PARAMETERS show_all AS CHECKBOX USER-COMMAND flag.
PARAMETERS hide  RADIOBUTTON GROUP  rd USER-COMMAND flag2 DEFAULT 'X'.
PARAMETERS show  RADIOBUTTON GROUP  rd .
SELECTION-SCREEN BEGIN OF BLOCK b1 WITH FRAME .
  PARAMETERSp1 TYPE c LENGTH 10 ,
              p2 TYPE c LENGTH 10.
SELECTION-SCREEN END OF BLOCK b1.
SELECTION-SCREEN BEGIN OF BLOCK b2 WITH FRAME TITLE t.
  PARAMETERSp3 TYPE c LENGTH 10 MODIF ID bl2,
              p4 TYPE c LENGTH 10 MODIF ID bl2.
SELECTION-SCREEN END OF BLOCK b2.
SELECTION-SCREEN BEGIN OF BLOCK b3 WITH FRAME .
  PARAMETERSp5 TYPE c LENGTH 10 MODIF ID bl3,
              p6 TYPE c LENGTH 10 MODIF ID bl3.
SELECTION-SCREEN END OF BLOCK b3.

INITIALIZATION.
  t '----ALL----'.
"单先与复选框、下拉列表项点击触发PAI后,接下来还会触发屏幕的PBO(回车也是这样),但如果点击的是执行按钮,则不会接着触发屏幕的PBO,除非没有输出或在Basic List列表页面上点击返回按钮时,才会触发PBO
AT SELECTION-SCREEN OUTPUT.
  LOOP AT SCREEN.
    IF show_all 'X'  AND screen-group1 'BL2'.
      screen-active '1'."显示
      MODIFY SCREEN.
    ELSEIF screen-group1 'BL2'.
      screen-active '0'."隐藏
      MODIFY SCREEN.
    ENDIF.
    IF  show 'X'  AND screen-group1 'BL3'.
      screen-active '1'.
      MODIFY SCREEN.
    ELSEIF  screen-group1 'BL3'.
      screen-active '0'.
      MODIFY SCREEN.
    ENDIF.
  ENDLOOP.

原文出自  江正军 技术博客,博客链接: www.cnblogs.com/jiangzhengjun
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值