效果图

参考代码


REPORT ZLM_SCREEN1.

TABLES SSCRFIELDS.

"展开--关闭按钮
SELECTION-SCREENPUSHBUTTON /2(10B_OPEN
                      USER-COMMAND F_OPEN MODIF ID M_O,    "open
                  PUSHBUTTON /2(10)  B_CLS
                      USER-COMMAND F_CLS  MODIF ID M_C.    "close

"选择屏幕
SELECTION-SCREEN BEGIN OF BLOCK B01 WITH FRAME TITLE TEXT-001.
PARAMETERSP_ID TYPE STRING MODIF ID M_C.
SELECTION-SCREEN END OF BLOCK B01.

PARAMETERSP_FLG TYPE NO-DISPLAY.

INITIALIZATION.


  "添加两个图标
  CONCATENATE ICON_EXPAND'打开' '' INTO B_OPEN,
               '打开' '' INTO B_OPEN.

  CONCATENATE ICON_COLLAPSE'关闭' '' INTO B_CLS,
                '关闭' '' INTO B_CLS.

  "默认是 关闭状态,点打开才能看到选择屏幕
  P_FLG 'X'.

AT SELECTION-SCREEN.
  CASE SSCRFIELDS-UCOMM.
    WHEN 'F_OPEN'.     "打开
      CLEAR P_FLG.
    WHEN 'F_CLS'.       "关闭
      P_FLG 'X'.
  ENDCASE.

AT SELECTION-SCREEN OUTPUT.
  LOOP AT SCREEN.
    "修改屏幕显示状态
    PERFORM CLOSE_BLOCK USING:  P_FLG 'M_O' 'X',
                                                            P_FLG 'M_C' SPACE.
  ENDLOOP.


*&---------------------------------------------------------------------*
*&      Form  CLOSE_BLOCK
*&---------------------------------------------------------------------*
*       text
*----------------------------------------------------------------------*
*      -->VALUE            text
*      -->(U_CLOSE_BLOCK)  text
*      -->U_MODIFY_ID      text
*      -->U_CONVERT        text
*----------------------------------------------------------------------*
FORM CLOSE_BLOCK USING VALUE(P_FLAGLIKE P_FLG
                     P_MODIFY_ID LIKE SCREEN-GROUP1
                     P_CONVERT."显示内容标识

  IF P_CONVERT IS NOT INITIAL.
    IF P_FLAG IS INITIAL.
      P_FLAG 'X'.
    ELSE.
      CLEAR P_FLAG.
    ENDIF.
  ENDIF.

  IF SCREEN-GROUP1 P_MODIFY_ID )
    AND (  P_FLAG IS NOT INITIAL ).
    SCREEN-ACTIVE '0'.
    MODIFY SCREEN.
  ENDIF.

ENDFORM.                    "close_block


©著作权归作者所有:来自51CTO博客作者mb5fd8698f60f87的原创作品,如需转载,请注明出处,否则将追究法律责任

更多相关文章

  1. CV学习笔记(十七):Windows环境复现ChineseOCR
  2. 工欲善其事,必先利其器 -- Mac 软件推荐(序)
  3. Android(安卓)Studio 入门 Hello World
  4. Unity Android(安卓)打开相册和摄像头
  5. android自动加载模块.ko文件的小方法
  6. Android(安卓)蓝牙开启关闭
  7. Android(安卓)SDK Manager Proxy on MAC
  8. Android实现微信自动抢红包的程序
  9. 禁用GPU硬件加速方法

随机推荐

  1. mac安装mysql的两种方法(含配置)
  2. 在创建多对多关系后,Sequelize Node.js新
  3. mysql批量删除相同前缀的表和修改表名
  4. MySql_数据库触发器的使用
  5. MySQL数据库root账户的设置和管理
  6. 版本5及更高版本中MySQL数据库的最大大小
  7. Mysql PARTITION 数据表分区技术
  8. mysql批量结束线程
  9. MySQL数据库表名、列名、别名区分大小写
  10. 在Google Cloud Platform上设计PolyGlot