二维码

Dialog程序中创建动态按钮图标和文本

Twilight发表于 2015-01-12 11:57Twilight 最后回复于 2015-01-12 11:57 [复制链接] 6012 0

我们经常会看到系统标准的'显示'和'更改'按钮,点击时能相互切换,只在一个button内完成,这就是动态按钮的应用。

1、se38创建可执行程序
  1. REPORT yleon_005.
  2. TYPE-POOLS:icon.
  3. DATA:i_function_key_line TYPE smp_dyntxt,
  4.      g_count             TYPE c,
  5.      ok_code_100         TYPE sy-ucomm.

  6. START-OF-SELECTION .
  7.   CALL SCREEN 100.
  8. *&---------------------------------------------------------------------*
  9. *&      Module  STATUS_0100  OUTPUT
  10. *&---------------------------------------------------------------------*
  11. *       text
  12. *----------------------------------------------------------------------*
  13. MODULE status_0100 OUTPUT.
  14.   IF g_count IS INITIAL.
  15.     CLEAR:i_function_key_line.
  16.     i_function_key_line-icon_id = icon_display.
  17.     i_function_key_line-icon_text = 'TEXT1'.
  18.     i_function_key_line-quickinfo = 'THIS IS FRIST NAME'.
  19.     SET PF-STATUS '0100'.
  20.     g_count = 1.
  21.   ELSEIF g_count = 1.
  22.     CLEAR:i_function_key_line.
  23.     i_function_key_line-icon_id = icon_change.
  24.     i_function_key_line-icon_text = 'TEXT2'.
  25.     i_function_key_line-quickinfo = 'THIS IS SECOND NAME'.
  26.     SET PF-STATUS '0100'.
  27.     CLEAR g_count.
  28.   ENDIF.

  29. ENDMODULE.                 " STATUS_0100  OUTPUT
复制代码

2、创建 normal screen 100,程序流
  1. PROCESS BEFORE OUTPUT.
  2. MODULE STATUS_0100.
  3. *
  4. PROCESS AFTER INPUT.
  5. * MODULE USER_COMMAND_0100.
复制代码

3、创建工具栏
双击代码SET PF-STATUS '0100'.中的100.
Dynamic Button 1.jpg
Application toolbar 中定义按钮function code,然后双击选择“Dynamic Text”
Dynamic Button 2.jpg
输入field name,也可以F4选择
4、程序执行效果
Dynamic Button 3.jpg
单击按钮
Dynamic Button 4.jpg
回复

使用道具 举报

快速回帖

本版积分规则
您需要登录后才可以回帖 登录 | 注册有礼

快速回复 返回顶部 返回列表