怎么使用点击事件onClick获取点击位置和元素信息


harmonyos
2025-05-07 14:50:26
浏览
收藏 0
回答 1
待解决
回答 1
按赞同
/
按时间
真庐山升龙霸

参考代码示例:

@Entry
@Component
struct ClickExample {
  @State text: string = ''

  build() {
    Column() {
      Row({ space: 20 }) {
        Button('Click').width(100).height(40)
          .onClick((event: ClickEvent) => {
            this.text = 'Click Point:' + '\n  screenX:' + event.screenX + '\n  screenY:' + event.screenY
            + '\n  x:' + event.x + '\n  y:' + event.y + '\ntarget:' + '\n  component globalPos:('
            + event.target.area.globalPosition.x + ',' + event.target.area.globalPosition.y + ')\n  width:'
            + event.target.area.width + '\n  height:' + event.target.area.height + '\ntimestamp' + event.timestamp;
          })
        Button('Click').width(200).height(50)
          .onClick((event: ClickEvent) => {
            this.text = 'Click Point:' + '\n  screenX:' + event.screenX + '\n  screenY:' + event.screenY
            + '\n  x:' + event.x + '\n  y:' + event.y + '\ntarget:' + '\n  component globalPos:('
            + event.target.area.globalPosition.x + ',' + event.target.area.globalPosition.y + ')\n  width:'
            + event.target.area.width + '\n  height:' + event.target.area.height + '\ntimestamp' + event.timestamp;
          })
      }.margin(20)

      Text(this.text).margin(15)
    }.width('100%')
  }
}

上面的代码中,通过点击不同按钮,可得到点击时的坐标信息和元素的详细信息,并将这些信息显示在文本组件中。

分享
微博
QQ
微信
回复
2025-05-08 10:47:24
相关问题
harmonyos next 手势事件点击事件
386浏览 • 3回复 已解决
如何获取元素位置大小
3263浏览 • 1回复 待解决
怎么透传onClick事件
1082浏览 • 1回复 待解决
HarmonyOS 点击事件过滤
888浏览 • 1回复 待解决
HarmonyOS ReactNavigation点击事件穿透
902浏览 • 1回复 待解决
HarmonyOS 富文本点击事件
1839浏览 • 1回复 待解决
Slider拦截点击事件失败
1045浏览 • 1回复 待解决
HarmonyOS 卡片点击事件失效
1590浏览 • 1回复 待解决
HarmonyOS 如何hook点击事件
1143浏览 • 1回复 待解决