javascript 如何处理UI5自定义控件中的伪事件?

2ledvvac  于 2023-05-16  发布在  Java
关注(0)|答案(1)|浏览(110)

当按下Page Up / Page Down时,我想在SAPUI 5控件中执行某些操作。
如何在自定义控件开发中处理sappageupsappagedown等UI 5伪事件?

gxwragnw

gxwragnw1#

在控件定义中,尝试使用:

metadata: {
  // ...
},

init: function() {
  // ...
},

onsappageup: function() {
  // Page up key pressed!
},

onsappagedown: function() {
  // Page down key pressed!
},

关于API reference of sap/ui/events/PseudoEvents.events
[...]SAPUI5控件和元素应该简单地实现一个**on***pseudo-event*(oEvent)方法。只有当识别出特定的伪事件时才会调用它。这进一步简化了事件调度。
请注意,此类伪事件只有在控件首先接收到焦点时才能被激发。若要使控件可获得焦点,请为控件提供HTML属性tabindexvideo(https://youtu.be/Pe0Ce1WtnUM)。例如:

renderer: {
  apiVersion: 2, // or higher. Refer to API reference of sap.ui.core.RenderManager
  render: (renderManager, myControl) => renderManager
    .openStart("div", myControl)
    .attr("tabindex", /*e.g.:*/"-1") // make it focusable
    // ...
    .openEnd()
    // ...
    .close("div")
  },
},

如果您正在使用键盘处理来导航项,请查看委托sap.ui.core.delegate.ItemNavigation

相关问题