您的位置:首页 > 大数据 > 人工智能

ABAP: 如何让ALV Tree的注册事件在屏幕PAI之后触发

2011-02-23 17:39 387 查看
见红色部分,添加该参数后,ALVtree的注册事件将在屏幕PAI完毕之后触发。

data: node_table type treev_ntab,
item_table type item_table_type,
events type cntl_simple_events,
event type cntl_simple_event.

* create a container for the tree control
create object g_custom_container
exporting " the container is linked to the custom control with the
" name 'TREE_CONTAINER' on the dynpro

container_name = 'TREE_CONTAINER'
exceptions
cntl_error = 1
cntl_system_error = 2
create_error = 3
lifetime_error = 4
lifetime_dynpro_dynpro_link = 5.
if sy-subrc <> 0.
message a000.
endif.
* create a list tree
create object g_tree
exporting
parent = g_custom_container
node_selection_mode = cl_gui_list_tree=>node_sel_mode_single
item_selection = 'X'
with_headers = ' '
exceptions
cntl_system_error = 1
create_error = 2
failed = 3
illegal_node_selection_mode = 4
lifetime_error = 5.
if sy-subrc <> 0.
message a000.
endif.

* define the events which will be passed to the backend
" node double click
event-eventid = cl_gui_list_tree=>eventid_node_double_click.
event-appl_event = 'X'. "
append event to events.

" item double click
event-eventid = cl_gui_list_tree=>eventid_item_double_click.
event-appl_event = 'X'.
append event to events.

" expand no children
event-eventid = cl_gui_list_tree=>eventid_expand_no_children.
event-appl_event = 'X'.
append event to events.

" link click
event-eventid = cl_gui_list_tree=>eventid_link_click.
event-appl_event = 'X'.
append event to events.

" button click
event-eventid = cl_gui_list_tree=>eventid_button_click.
event-appl_event = 'X'.
append event to events.

" checkbox change
event-eventid = cl_gui_list_tree=>eventid_checkbox_change.
event-appl_event = 'X'.
append event to events.

call method g_tree->set_registered_events
exporting
events = events
exceptions
cntl_error = 1
cntl_system_error = 2
illegal_event_combination = 3.
if sy-subrc <> 0.
message a000.
endif.

* assign event handlers in the application class to each desired event
set handler g_application->handle_node_double_click for g_tree.
set handler g_application->handle_item_double_click for g_tree.
set handler g_application->handle_expand_no_children for g_tree.
set handler g_application->handle_link_click for g_tree.
set handler g_application->handle_button_click for g_tree.
set handler g_application->handle_checkbox_change for g_tree.
内容来自用户分享和网络整理,不保证内容的准确性,如有侵权内容,可联系管理员处理 点击这里给我发消息
标签: