"维护标准文本 - 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.
文本 - CL_GUI_TEXTEDIT
最新推荐文章于 2023-11-08 16:45:29 发布