點(diǎn)擊事件

2024-01-22 10:45 更新

組件被點(diǎn)擊時觸發(fā)的事件

事件

名稱 支持冒泡 功能描述
onClick(event: (event?: ClickEvent) => void) 點(diǎn)擊動作觸發(fā)該回調(diào),event返回值見ClickEvent對象說明。從API version 9開始,該接口支持在ArkTS卡片中使用。

ClickEvent對象說明

從API version 9開始,該接口支持在ArkTS卡片中使用。

名稱 類型 描述
screenX number 點(diǎn)擊位置相對于應(yīng)用窗口左上角的X坐標(biāo)。
screenY number 點(diǎn)擊位置相對于應(yīng)用窗口左上角的Y坐標(biāo)。
x number 點(diǎn)擊位置相對于被點(diǎn)擊元素左上角的X坐標(biāo)。
y number 點(diǎn)擊位置相對于被點(diǎn)擊元素左上角的Y坐標(biāo)。
timestamp8+ number 事件時間戳。觸發(fā)事件時距離系統(tǒng)啟動的時間間隔,單位納秒。
target8+ EventTarget 觸發(fā)事件的元素對象顯示區(qū)域。
source8+ SourceType 事件輸入設(shè)備。

EventTarget8+對象說明**

名稱 參數(shù)類型 描述
area Area 目標(biāo)元素的區(qū)域信息。

示例

  1. // xxx.ets
  2. @Entry
  3. @Component
  4. struct ClickExample {
  5. @State text: string = ''
  6. build() {
  7. Column() {
  8. Row({ space: 20 }) {
  9. Button('Click').width(100).height(40)
  10. .onClick((event: ClickEvent) => {
  11. this.text = 'Click Point:' + '\n screenX:' + event.screenX + '\n screenY:' + event.screenY
  12. + '\n x:' + event.x + '\n y:' + event.y + '\ntarget:' + '\n component globalPos:('
  13. + event.target.area.globalPosition.x + ',' + event.target.area.globalPosition.y + ')\n width:'
  14. + event.target.area.width + '\n height:' + event.target.area.height + '\ntimestamp' + event.timestamp;
  15. })
  16. Button('Click').width(200).height(50)
  17. .onClick((event: ClickEvent) => {
  18. this.text = 'Click Point:' + '\n screenX:' + event.screenX + '\n screenY:' + event.screenY
  19. + '\n x:' + event.x + '\n y:' + event.y + '\ntarget:' + '\n component globalPos:('
  20. + event.target.area.globalPosition.x + ',' + event.target.area.globalPosition.y + ')\n width:'
  21. + event.target.area.width + '\n height:' + event.target.area.height + '\ntimestamp' + event.timestamp;
  22. })
  23. }.margin(20)
  24. Text(this.text).margin(15)
  25. }.width('100%')
  26. }
  27. }

以上內(nèi)容是否對您有幫助:
在線筆記
App下載
App下載

掃描二維碼

下載編程獅App

公眾號
微信公眾號

編程獅公眾號