为什么 `cl_gui_textedit->get_textstream` 的结果是空的?
Why is the result of `cl_gui_textedit->get_textstream` empty?
我正在使用 ABAP 标准 class cl_gui_textedit
从我的选择屏幕上的文本区域读取文本。但是在实例上调用方法get_textstream
后的结果是空的。
最小工作示例:
REPORT z_mwe_textarea_bug.
DATA lr_edit TYPE REF TO cl_gui_textedit.
DATA lr_docker TYPE REF TO cl_gui_docking_container.
PARAMETERS p_dummy TYPE string DEFAULT 'just for testing'. ""// <--- need this to show selection screen.
INITIALIZATION.
CREATE OBJECT lr_docker
EXPORTING
ratio = 60.
CREATE OBJECT lr_edit
EXPORTING
parent = lr_docker.
lr_docker->dock_at( EXPORTING side = cl_gui_docking_container=>dock_at_left ).
START-OF-SELECTION.
DATA lv_text_from_textarea TYPE string.
lr_edit->get_textstream( IMPORTING text = lv_text_from_textarea ). ""// <-- why is lv_text_from_textarea empty??
您(或我,回答我自己的问题)之后必须致电 cl_gui_cfw=>flush( )
。像这样:
lr_edit->get_textstream( IMPORTING text = lv_text_from_textarea ). ""// <-- lv_text_from_textarea still empty
cl_gui_cfw=>flush( ). ""//<-- now it's not empty anymore.
免责声明: 在 abapforum.de 上找到了答案,但删除了所有无用的(和德语的)讨论并为我的问题添加了一个最小的工作示例.
我正在使用 ABAP 标准 class cl_gui_textedit
从我的选择屏幕上的文本区域读取文本。但是在实例上调用方法get_textstream
后的结果是空的。
最小工作示例:
REPORT z_mwe_textarea_bug.
DATA lr_edit TYPE REF TO cl_gui_textedit.
DATA lr_docker TYPE REF TO cl_gui_docking_container.
PARAMETERS p_dummy TYPE string DEFAULT 'just for testing'. ""// <--- need this to show selection screen.
INITIALIZATION.
CREATE OBJECT lr_docker
EXPORTING
ratio = 60.
CREATE OBJECT lr_edit
EXPORTING
parent = lr_docker.
lr_docker->dock_at( EXPORTING side = cl_gui_docking_container=>dock_at_left ).
START-OF-SELECTION.
DATA lv_text_from_textarea TYPE string.
lr_edit->get_textstream( IMPORTING text = lv_text_from_textarea ). ""// <-- why is lv_text_from_textarea empty??
您(或我,回答我自己的问题)之后必须致电 cl_gui_cfw=>flush( )
。像这样:
lr_edit->get_textstream( IMPORTING text = lv_text_from_textarea ). ""// <-- lv_text_from_textarea still empty
cl_gui_cfw=>flush( ). ""//<-- now it's not empty anymore.
免责声明: 在 abapforum.de 上找到了答案,但删除了所有无用的(和德语的)讨论并为我的问题添加了一个最小的工作示例.