如何清除容器文字

2020-08-17 09:10发布

         点击此处--->   EasySAP.com群内免费提供SAP练习系统(在群公告中)

加入QQ群:457200227(SAP S4 HANA技术交流) 群内免费提供SAP练习系统(在群公告中)


大家好,
请咨询

我使用此代码创建容器文本。

 ct_text_editor类型参考cl_gui_textedit,
 ct_text_editor类型参考cl_gui_textedit,
 ct_container1类型参考cl_gui_custom_container,
 ct_container2类型参考cl_gui_custom_container,

当我显示一些数据时,它就起作用了。

但是,当我创建新数据时。 仍在容器中看不到的显示文字。

我如何清除该容器?
请参见下面的"描述"文字。

(25.6 kB)

         点击此处--->   EasySAP.com群内免费提供SAP练习系统(在群公告中)

加入QQ群:457200227(SAP S4 HANA技术交流) 群内免费提供SAP练习系统(在群公告中)


大家好,
请咨询

我使用此代码创建容器文本。

 ct_text_editor类型参考cl_gui_textedit,
 ct_text_editor类型参考cl_gui_textedit,
 ct_container1类型参考cl_gui_custom_container,
 ct_container2类型参考cl_gui_custom_container,

当我显示一些数据时,它就起作用了。

但是,当我创建新数据时。 仍在容器中看不到的显示文字。

我如何清除该容器?
请参见下面的"描述"文字。

(25.6 kB)
付费偷看设置
发送
8条回答
追夢秋陽
1楼-- · 2020-08-17 09:20

你好 Stedward McKnight

我要检查CL_GUI_TEXTEDIT实例的DELETE_TEXT方法是否没有

在内部代码中看起来像是这样。

 ct_text_editor-> delete_text()。
问候,
Mateusz
Baoming ROSE
2楼-- · 2020-08-17 09:17
< p>这是我的代码。

刷新it_tline。
     通话功能" READ_TEXT"
       出口
 *客户= SY-MANDT
         id ='ST'
         语言='E'
         名称= txtname
         object ='TEXT'
       桌子
         行数= it_tline。
     如果sy-subrc <> 0。
     万一。
   万一。

   刷新:文本行。
   循环到it_tline,进入wa_tline。
     SHIFT wa_tline左侧删除领先空间。
     将wa_tline附加到文本行。
   结局。
 * *用文本行填充容器
   呼叫方法editor2-> set_text_as_r3table
     出口
       表格=文字行
 *表= it_tline
     例外情况
       其他= 1。
 
SAP小菜
3楼-- · 2020-08-17 09:27

您可以尝试以下任何一种方法:

    CL_GUI_TEXTEDIT类中的
  • obj-> free()
  • DELETE_TEXT。
  • 调用方法CL_GUI_CFW => FLUSH。

或者您可以用空行初始化(文本行为空)

调用方法text_editor-> set_text_as_r3table
      出口
            表格=文字行
      例外情况
            others = 1。

致谢,

Venkat

派大星 ヾ
4楼-- · 2020-08-17 09:22

谢谢,但我看不到您关于左侧textedit控件实例化的逻辑。 请按照Mateusz的要求提供整个逻辑,PBO,PAI等。

小灯塔
5楼-- · 2020-08-17 09:15

这是我的工作代码。 请与您的代码进行比较并进行必要的更改。

 FORM set_texteditor。
   创建对象editor_container
     出口
       container_name ='TEXTEDITOR'
     例外情况
       cntl_error = 1
       cntl_system_error = 2
       create_error = 3
       lifetime_error = 4
       lifetime_dynpro_dynpro_link = 5。
 如果text_editor是INITIAL。
   创建对象text_editor
     出口
       父= editor_container
       wordwrap_mode = cl_gui_textedit => wordwrap_at_fixed_position
       wordwrap_position = line_length
       wordwrap_to_linebreak_mode = cl_gui_textedit => true。

   调用方法text_editor-> set_toolbar_mode
     出口
       工具栏模式= cl_gui_textedit => false。

   调用方法text_editor-> set_statusbar_mode
     出口
       statusbar_mode = cl_gui_textedit => false。

       调用方法text_editor-> delete_text。  "请添加此行以明确
 万一。


 ENDFORM。  " SET_TEXTEDITOR
 

问候,

Venkat

nice_wp
6楼-- · 2020-08-17 09:32

嗨, Sandra Rossi Mateusz Adamus

非常感谢! 我的问题解决了,
我只是使用此代码。

 FORM free_container。

   如果container1不是初始的。
     调用方法container1-> free。
   万一。
   如果container2不是初始的。
     调用方法container2-> free。
   万一。
   如果编辑器不是INITIAL。
     调用方法编辑器->免费。
   万一。
   如果editor2不是初始的。
     调用方法编辑器2->免费。
   万一。

    清除:container1,container2,editer,editor2。
 ENDFORM。

一周热门 更多>