ABAP 选择屏幕按钮实现折叠、展开效果


前言

选择屏幕实现按钮折叠、展开效果。。。直接上代码!!!


代码如下

*&---------------------------------------------------------------------*
*& 程 序 名:YTEST_001
*& 程序描述:选择屏幕->按钮折叠、展开
*& 创 建 者:jyh
*& 创建日期:2023/11/20
*&---------------------------------------------------------------------*
*& 版本     修改者(公司)     日期         修改描述
*& 1.0.0    XXXX           YYYYMMDD      创建程序
*&---------------------------------------------------------------------*
REPORT ytest_001.

*&---------------------------------------------------------------------*
* TABLES
*&---------------------------------------------------------------------*
TABLES:mara.

*&---------------------------------------------------------------------*
* SELECTION-SCREEN
*&---------------------------------------------------------------------*
*定义按钮
SELECTION-SCREEN BEGIN OF LINE.
SELECTION-SCREEN PUSHBUTTON 1(4) but01 USER-COMMAND bt1 VISIBLE LENGTH 2.
SELECTION-SCREEN COMMENT 6(20) t1.
SELECTION-SCREEN END   OF LINE.

*定义展开后的选择屏幕
SELECTION-SCREEN BEGIN OF BLOCK b01 WITH FRAME TITLE t2.
SELECT-OPTIONS:s_mstae FOR mara-mstae MODIF ID md3,
               s_matnr FOR mara-matnr MODIF ID md3,
               s_ernam FOR mara-ernam MODIF ID md3,
               s_pstat FOR mara-pstat MODIF ID md3.
SELECTION-SCREEN END   OF BLOCK b01.

*&----------------------------------------------------------------------
*& INITIALIZATION.
*&----------------------------------------------------------------------
INITIALIZATION.
* 初始化
  t1 = '折叠'.
  t2 = '查询条件'.
  but01 = icon_data_area_expand.

*&----------------------------------------------------------------------
*& AT SELECTION-SCREEN OUTPUT
*&----------------------------------------------------------------------
AT SELECTION-SCREEN OUTPUT.
* 屏幕属性控制
  LOOP AT SCREEN .
    IF but01 = icon_data_area_expand AND screen-group1 = 'MD3' .
      screen-active = '0'.
      MODIFY SCREEN.
    ENDIF.
  ENDLOOP.

*&----------------------------------------------------------------------
*& AT SELECTION-SCREEN
*&----------------------------------------------------------------------
AT SELECTION-SCREEN.
  CASE sy-ucomm.
    WHEN 'BT1'.
      IF but01 = icon_data_area_expand.
        WRITE icon_data_area_collapse AS ICON TO but01.
        t1 = '折叠'.
      ELSE.
        WRITE icon_data_area_expand AS ICON TO but01.
        t1 = '展开'.
      ENDIF.
    WHEN OTHERS.
  ENDCASE.

效果展示


总结

感谢!

  • 0
    点赞
  • 2
    收藏
    觉得还不错? 一键收藏
  • 0
    评论

“相关推荐”对你有帮助么?

  • 非常没帮助
  • 没帮助
  • 一般
  • 有帮助
  • 非常有帮助
提交
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值