zoukankan      html  css  js  c++  java
  • 通过定制控制设计文本编辑器

    1、创建屏幕100,

    2、在屏幕上添加自定义控制对象元素和退出、输出按钮

    3、代码实现部分:

    *&---------------------------------------------------------------------*
    *& Report  YTEST020
    *&
    *&---------------------------------------------------------------------*
    *&
    *&
    *&---------------------------------------------------------------------*

    REPORT  ytest020.

    *功能码返回值
    DATA:ok_code TYPE sy-ucomm,
          save_ok TYPE sy-ucomm.

    **初始化标识字段定义*定制控制和编辑器
    DATA:init,
          container TYPE REF TO cl_gui_custom_container,
          editor TYPE REF TO cl_gui_textedit.

    *定义编辑器读出内部

    DATA:m1(256TYPE OCCURS 0,
          line(256TYPE c.

    *m1 like standard table of line .

    *输出初始数据
    line '请输入:'.
    APPEND line TO m1.


    *直接调用窗口
    CALL SCREEN 100.

    *清空内表重新从编辑器读入
    REFRESH m1.
    CALL METHOD editor->get_text_as_r3table
      IMPORTING
        table m1.
    *逐行输出
    LOOP AT m1 INTO line.
      WRITE line.

    ENDLOOP.
    *&---------------------------------------------------------------------*
    *&      Module  USER_COMMAND_0100  INPUT
    *&---------------------------------------------------------------------*
    *       text
    *----------------------------------------------------------------------*
    MODULE user_command_0100 INPUT.
      save_ok ok_code.
      CLEAR ok_code.

    * 退出按钮时退出程序

      CASE save_ok.
        WHEN 'WRITE'.
          LEAVE TO SCREEN 0.       “离开屏幕

        WHEN 'EXIT'.
          LEAVE PROGRAM.            “离开程序


      ENDCASE.

    ENDMODULE.                 " USER_COMMAND_0100  INPUT
    *&---------------------------------------------------------------------*
    *&      Module  STATUS_0100  OUTPUT
    *&---------------------------------------------------------------------*
    *       text
    *----------------------------------------------------------------------*
    MODULE status_0100 OUTPUT.
    *  SET PF-STATUS 'xxxxxxxx'.
    *  SET TITLEBAR 'xxx'.
      IF init IS INITIAL.
        CREATE OBJECT:container EXPORTING container_name 'P1'.

        CREATE OBJECT editor
          EXPORTING
            parent                     container
            wordwrap_mode              cl_gui_textedit=>wordwrap_at_fixed_position
            wordwrap_position          256
            wordwrap_to_linebreak_mode cl_gui_textedit=>true.

      ENDIF.

    *读取初始数据

      CALL METHOD editor->set_text_as_r3table
        EXPORTING
          table m1.
    ENDMODULE.                 " STATUS_0100  OUTPUT

    INCLUDE ytest020_exiti01.

  • 相关阅读:
    [转] Oracle数据库备份与恢复
    Oracle RMAN 恢复控制文件到指定的路径
    [转] AIX lv 4k偏移量
    关于oracle 10g creating datafile with zero offset for aix
    linux中的chage命令
    [转] Oracle sql 查询突然变慢 -- 案例分析
    [转] Oracle analyze table 使用总结
    [转] Oracle analyze 命令分析
    .net 事务
    _BIN 二进制排序
  • 原文地址:https://www.cnblogs.com/caizjian/p/3333047.html
Copyright © 2011-2022 走看看