FavoriteLoading
0

OO ALV中的data_changed、data_changed_finished事件介绍

Alv grid/OO ALV中有两个事件(Event):data_changed和ata_changed_finished.

第一个事件在可编辑字段的数据发生变化时触发,可用来检查数据的输入正确性,第二个事件是当数据修改完成后触发

如果数据没有被修改,当失去焦点(比如输入结束后,光标移动到下一个需要输入的单元格中)或回车时,那么它不会走data change,而是直接触发data change finish事件

可以通过CL_GUI_ALV_GRID类的REGISTER_EDIT_EVENT方法来设置在失去焦点回车时,触发数据改变事件:

2  按回车触发: i_event_id = cl_gui_alv_grid=>mc_event_enter

2  单元格失去焦点: i_event_id = cl_gui_alv_grid=>mc_event_modifies

必须设置一种方式,要不然数据变化事件不会被触发事件

然后注册CL_GUI_ALV_GRID的data_changed、data_changed_finished事件,实现事件处理器方法,在数据发生改变时就会触发这两上事件

以上。