按下转义键时如何关闭模态弹出窗口

Ska*_*zub 4 abap

我有一个ABAP Z报告,显示一个模态弹出窗口(屏幕).用户按下退出键时是否可以关闭它?

我正在使用下一个屏幕调用显示弹出窗口

call screen 0100 STARTING AT 10 10 ENDING AT 110 30.
Run Code Online (Sandbox Code Playgroud)

屏幕有下一个PAI模块:

MODULE USER_COMMAND_0100 INPUT.

  clear gv_ok.

  case sy-ucomm.

      when 'BTN_OK'.
          gv_ok = 'X'.    
          LEAVE TO SCREEN 0.

    when 'BTN_CANC'.
      perform clean.
      LEAVE TO SCREEN 0.
  endcase.

ENDMODULE.                 " USER_COMMAND_0100  INPUT
Run Code Online (Sandbox Code Playgroud)

但是当用户按下转义键时不会调用PAI模块.

流逻辑部分是

PROCESS BEFORE OUTPUT.
  MODULE STATUS_0100.
*
PROCESS AFTER INPUT.
  MODULE USER_COMMAND_0100.
  module exit at exit-command.
Run Code Online (Sandbox Code Playgroud)

在按下Esc键时,不会调用任何PAI模块.

Józ*_*zai 6

您需要检查GUI状态:

GUI状态

转义键自动分配给此,您只需要分配命令(BUT_CANC,在我的示例中为ZCANC).