1.测试

2.代码

  1. *&---------------------------------------------------------------------*
  2. *& Report ZRICO_TEST24
  3. *&
  4. *&---------------------------------------------------------------------*
  5. *&
  6. *&
  7. *&---------------------------------------------------------------------*
  8. report zrico_test24.
  9.  
  10. tables: sscrfields.
  11. data: g_code type sscrfields-ucomm. "FUNCTION CODE
  12.  
  13. parameters: p_cb0() type c no-display, "Close Block 0
  14. p_cb1() type c no-display. "Close Block 1
  15.  
  16. selection-screen function key ."expand all blocks
  17. selection-screen function key . "collapse all blocks
  18.  
  19. ***************** Block 00 *** Description data file
  20. selection-screen: pushbutton /() pushb_o0 "Open Block 00
  21. user-command ucomm_o0 modif id mo0, "#EC NEEDED
  22. pushbutton /() pushb_c0 "Close Block 00
  23. user-command ucomm_c0 modif id mc0. "#EC NEEDED
  24. selection-screen begin of block b0 with frame title text-.
  25. parameters: p_down00 type downloadx as checkbox modif id mc0.
  26. selection-screen end of block b0.
  27.  
  28. ***************** Block 01 *** Report 01
  29. selection-screen: pushbutton /() pushb_o1 "Open Block 01
  30. user-command ucomm_o1 modif id mo1, "#EC NEEDED
  31. pushbutton /() pushb_c1 "Close Block 01
  32. user-command ucomm_c1 modif id mc1. "#EC NEEDED
  33. selection-screen begin of block b1 with frame title text-.
  34. parameters: p_rep01 as checkbox modif id mc1."DEFAULT 'X'.
  35. parameters: p_var01 like varid-variant modif id mc1.
  36. selection-screen end of block b1.
  37.  
  38. initialization.
  39.  
  40. * Close Selection-Screen
  41. p_cb0 = 'X'. p_cb1 = 'X'.
  42. * Set Text & Icon for application bar
  43. concatenate icon_expand: 'Expand all blocks' into sscrfields-functxt_01.
  44. concatenate icon_collapse: 'Collapse all blocks' into sscrfields-functxt_02.
  45.  
  46. * Set Text & Icon for Pushbutton
  47. concatenate icon_collapse: 'Block 00' into pushb_c0,
  48. 'Block 01' into pushb_c1 .
  49.  
  50. concatenate icon_expand: 'Block 00' into pushb_o0,
  51. 'Block 01' into pushb_o1.
  52.  
  53. at selection-screen.
  54. g_code = sscrfields-ucomm.
  55. case g_code.
  56. *Expand all blocks
  57. when 'FC01'.
  58. perform expand_all_blocks.
  59. *Collapse all blocks
  60. when 'FC02'. "Collapse all blocks
  61. perform collapse_all_blocks.
  62. *Open/close individual block functions
  63. when 'UCOMM_O0'. "Open Block 0
  64. clear p_cb0.
  65. when 'UCOMM_C0'. "Close Block 0
  66. p_cb0 = 'X'.
  67. when 'UCOMM_O1'. "Open Block 1
  68. clear p_cb1.
  69. when 'UCOMM_C1'. "Close Block 1
  70. p_cb1 = 'X'.
  71. endcase.
  72.  
  73. at selection-screen output.
  74. *modify screen according predefined screen group
  75. loop at screen.
  76. case screen-group1.
  77. when 'MC0'.
  78. perform close_block using: p_cb0 'MC0' space.
  79. when 'MO0'.
  80. perform close_block using: p_cb0 'MO0' 'X' .
  81. when 'MC1'.
  82. perform close_block using: p_cb1 'MC1' space.
  83. when 'MO1'.
  84. perform close_block using: p_cb1 'MO1' 'X' .
  85. when others.
  86. continue.
  87. endcase.
  88. endloop.
  89.  
  90. *&---------------------------------------------------------------------*
  91. *& Form close_block
  92. *&---------------------------------------------------------------------*
  93. form close_block using value(i_close_block) like p_cb1
  94. value(i_modify_id) like screen-group1
  95. value(i_convert) type char1.
  96. if not i_convert is initial.
  97. if i_close_block is initial.
  98. i_close_block = 'X'.
  99. else.
  100. clear i_close_block.
  101. endif.
  102. endif.
  103.  
  104. if ( screen-group1 = i_modify_id )
  105. and ( not i_close_block is initial ).
  106. screen-active = ''.
  107. modify screen.
  108. endif.
  109.  
  110. endform. "close_block
  111.  
  112. *&---------------------------------------------------------------------*
  113. *& Form collapse_all_blocks
  114. *&---------------------------------------------------------------------*
  115. form collapse_all_blocks.
  116. p_cb0 = 'X'.p_cb1 = 'X'.
  117. endform. "collapse_all_blocks
  118.  
  119. *&---------------------------------------------------------------------*
  120. *& Form expand_all_blocks
  121. *&---------------------------------------------------------------------*
  122. form expand_all_blocks.
  123. clear: p_cb0,p_cb1 .
  124. endform.

ABAP-折叠窗口的更多相关文章

  1. Winform中使用折叠窗口

    使用此处的控件 http://www.codeproject.com/Articles/18401/XPanderControls 注意事项 使用之前需要先添加winform自带的toolStripC ...

  2. 前端的UI设计与交互之设计原则篇

    1.亲密性 a)纵向间距示例这三种规格分别为:8px(小号间距).16px(中号间距).24px(大号间距). b)在这三种规格不适用的情况下,可以通过加减『基础间距』的倍数,或者增加元素来拉开信息层 ...

  3. 扩展SplitContainer控件

    效果图: 自定义控件实现代码: using System; using System.ComponentModel; using System.Drawing; using System.Window ...

  4. vim的vimrc配置

    windows "# modified by Neoh set helplang=cn "使用中文帮助文档 set encoding=utf-8 "查看utf-8格式的帮 ...

  5. Altium Designer 开始一个项目

    通常一个嵌入式开发都需要一个开发板,这就涉及到原理图设计和PCB设计等流程.目前比较主流的设计软件当属Altium Designer了,于是便向写一个关于这方面的专题,也好总结一下,省得以后忘记. A ...

  6. BootStrap入门教程 (四) :JQuery类库插件(模态窗口,滚动监控,标签效果,提示效果,“泡芙”效果,警告区域,折叠效果,旋转木马,输入提示)

    上讲回顾:Bootstrap组件丰富同时具有良好可扩展性,能够很好地应用在生产环境.这些组件包括按钮(Button),导航(Navigation),缩略图( thumbnails),提醒(Alert) ...

  7. 使用AnimateWindow来实现窗口淡入淡出(主要有四种动画,滚动,滑动,折叠或展开,和淡入淡出)

    如果是在VC6下进行编译,应引入下面的预编译宏,注意放在windows.h的前面#undef  WINVER   #define  WINVER   0x500为什么要引入上面的宏呢?看看winuse ...

  8. 仿word导航窗口的展开与折叠

    // 标识是否是展开状态 bool isExtend = true; // 定义可以扩展的宽度 const int PanelWidth = 444; private void expandableS ...

  9. SSRS 实用技巧 ---- 为表格添加展开/折叠操作(明细报表)

    相信很多人都会遇到这样的需求:当表格按照某几个列分组时,需要为组添加展开和折叠的操作. 最初展现表格的时候只展现最外层分组,然后点击展开后可以查看分组内的明细情况. 先来一张效果图,然后再看具体如何实 ...

  10. ABAP使用OLE2对象创建EXCEL文件

    厌倦了总是下载一模一样的EXCEL文档?没有颜色,边框,有效性验证.... 让我们看看怎样用OLE2对象来创造可爱的EXCEL工作表吧!(效果如下) 首先你需要知道微软EXCEL中的不同部分的名称,每 ...

随机推荐

  1. 学习笔记之Everything

    Everything (software) - Wikipedia https://en.wikipedia.org/wiki/Everything_(software) Everything is ...

  2. 数据库的ds命令

    Mysqi      数据库: 理一下数据库的格式: mysqi 关系型数据库,(表的概念) node.js 非关系性数据库  (json) 结构:数据库存放多张表,每个表可以存放多个字段,每个字段可 ...

  3. 在CentOS6的上安装Windows2012R2的KVM虚拟机

    在CentOS6的上安装Windows2012R2的KVM虚拟机 1:上传cn_windows_server_2012_r2_vl_with_update_x64_dvd_6052729.iso下载驱 ...

  4. centos6.8下l2tp客户端xl2tpd的安装配置

    环境: DigitalOcean centos6.8作为l2tp客户端 ros6.43.8作为l2tp服务端 1.安装xl2tp和ppp rpm -ivh http://mirrors.yun-idc ...

  5. 利用原生js的Dom操作实现简单的ToDoList的效果

    效果如下: 前端及js代码如下: <!DOCTYPE html> <html lang="en"> <head> <meta charse ...

  6. Java注解的基本概念和原理及其简单实用

      一.注解的基本概念和原理及其简单实用 注解(Annotation)提供了一种安全的类似注释的机制,为我们在代码中添加信息提供了一种形式化得方法,使我们可以在稍后某个时刻方便的使用这些数据(通过解析 ...

  7. SCCM2012 R2实战系列之十一:解决OSD分发Windows7 系统盘盘符为’D’问题

    在SCCM 2012 R2操作系统分发(OSD)中,大家最早做的实验可能就是分发干净的Windows7和Windows 8(或Windows8.1)了吧.但是不可面对的问题就是相同配置的任务序列(只是 ...

  8. c#属性 ——面向对象

    String. Format(字符串格式化输出) 相当于Console.WriteLine(字符串格式化输出); 而String.Format是返回一个字符串 属性: 因为把字段全public,会非常 ...

  9. javascript-回归原生基础

    //添加事件监听兼容函数 function addHandler(target, eventType, handler){ if(target.addEventListener){//主流浏览器 ad ...

  10. Ubuntu 14.4 安装OpenVZ

    添加源 vim /etc/apt/sources.list.d/openvz.list 写入下面内容保存 如果需要,可以视情况改动注释..(如果看不懂,请不要在意这行字) deb http://dow ...