文本 - CL_GUI_TEXTEDIT

"维护标准文本 - SO10
DATA: container1 TYPE REF TO cl_gui_custom_container
    , editor1 TYPE REF TO cl_gui_textedit
    , BEGIN OF wa_tdline
    , tdline TYPE tdline
    , END OF wa_tdline
    , t_tdline1 LIKE TABLE OF wa_tdline.
*创建文本域

IF editor1 IS INITIAL.
  CREATE OBJECT: container1
         EXPORTING container_name = 'ZTEXT'.

  CREATE OBJECT editor1
    EXPORTING
      parent                     = container1
      wordwrap_mode              = cl_gui_textedit=>wordwrap_at_fixed_position
      wordwrap_position          = 132
      wordwrap_to_linebreak_mode = cl_gui_textedit=>true.
  "工具栏 0 不可见
  CALL METHOD editor1->set_toolbar_mode
    EXPORTING
      toolbar_mode = 0.
  "状态栏
  CALL METHOD editor1->set_statusbar_mode
    EXPORTING
      statusbar_mode = 0.
  "只读状态
  CALL METHOD editor1->set_readonly_mode
    EXPORTING
      readonly_mode          = 1
    EXCEPTIONS
      error_cntl_call_method = 1
      invalid_parameter      = 2
      OTHERS                 = 3.
  "设置文本
  CALL METHOD editor1->set_text_as_r3table
    EXPORTING
      table = t_tdline1.
ENDIF.

"行保护-部分行不可编辑设置
CALL METHOD editor1->protect_lines
  EXPORTING
    from_line              = 1        " 起始行
    protect_mode           = 1        " 1 = 保护
    to_line                = gv_line  " 结束行 - 为0也至少1行
  EXCEPTIONS
    error_cntl_call_method = 1
    invalid_parameter      = 2
    OTHERS                 = 3.

*读取文本域数据 - R3内表
CALL METHOD editor1->get_text_as_r3table
  IMPORTING
    table = t_tdline1.


"1 , 读取文本编辑器内容 - 文本流
CALL METHOD editor1->get_text_as_stream
  
"2 , 内表(文本流)转换为内表
CALL FUNCTION 'CONVERT_STREAM_TO_ITF_TEXT'
  
"3 , 保存文本(ID,OBJECT 通过 SE75维护)
CALL FUNCTION 'SAVE_TEXT'
  
 "4,读取文本
CALL FUNCTION 'READ_TEXT'
  
"5 , 文本内表转文本流
CALL FUNCTION 'CONVERT_ITF_TO_STREAM_TEXT'
  
"6 , 设置文本
CALL METHOD editor1->set_text_as_stream 

"7 , WORD  方式显示文本
LOOP AT gt_line2.
  gt_linew-tdformat  = '>X'.    "--格式:不可编辑--
  gt_linew-tdline    = '*'.     "--文本行:前两字符为格式 --【* :标准格式】,否则SO10不能正常显示
  gt_linew-tdline+2  = gt_line2-tdline.
  APPEND gt_linew.
ENDLOOP.

CALL FUNCTION 'EDIT_TEXT'
  EXPORTING
    display   = 'X'   " 是否显示模式
    header    = gs_headltx
    save      = ''    " 是否存档
  IMPORTING
    function  = gv_txfunction   "返回结果 非空表示 有操作
    newheader = gs_headltx
    RESULT    = gs_result
  TABLES
    lines     = gt_linew.

 " 8 , log 行
CALL FUNCTION 'TEXT_CREATE_HISTORY_LINE'
  IMPORTING
    history_line = gt_line1-tdline.

  • 0
    点赞
  • 4
    收藏
    觉得还不错? 一键收藏
  • 0
    评论
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值