harmony 鸿蒙@ohos.multimodalInput.inputMonitor (Input Monitor)

2022-08-09 浏览 (886)

@ohos.multimodalInput.inputMonitor (Input Monitor)

The inputMonitor module implements listening for events of input devices, including the touchscreen, mouse, touchpad, etc.

NOTE

  • The initial APIs of this module are supported since API version 7. Newly added APIs will be marked with a superscript to indicate their earliest API version.

  • The APIs provided by this module are system APIs.

  • In this document, global indicates the entire touchscreen or touchpad. For example, listening for global touch events means to listen for touch events of the entire touchpad when a user touches at any position on the touchpad.

Modules to Import

import inputMonitor from '@ohos.multimodalInput.inputMonitor';

inputMonitor.on('touch')

on(type: 'touch', receiver: TouchEventReceiver): void

Enables listening for global touch (touchscreen) events.

Required permissions: ohos.permission.INPUT_MONITORING

System capability: SystemCapability.MultimodalInput.Input.InputMonitor

Parameters

NameTypeMandatoryDescription
typestringYesEvent type. This field has a fixed value of touch.
receiverTouchEventReceiverYesCallback used to return the touch event asynchronously.

Example

try {
  inputMonitor.on('touch', (touchEvent: TouchEvent) => {
    console.log(`Monitor on success ${JSON.stringify(touchEvent)}`);
    return false;
  });
} catch (error) {
  console.log(`Monitor on failed, error: ${JSON.stringify(error, [`code`, `message`])}`);
}

inputMonitor.on('mouse')9+

on(type: 'mouse', receiver: Callback<MouseEvent>): void

Enables listening for global mouse events.

Required permissions: ohos.permission.INPUT_MONITORING

System capability: SystemCapability.MultimodalInput.Input.InputMonitor

Parameters

NameTypeMandatoryDescription
typestringYesEvent type. This field has a fixed value of mouse.
receiverCallback<MouseEvent>YesCallback used to return the mouse event asynchronously.

Example

import { MouseEvent } from '@ohos.multimodalInput.mouseEvent';

try {
  inputMonitor.on('mouse', (mouseEvent: MouseEvent) => {
    console.log(`Monitor on success ${JSON.stringify(mouseEvent)}`);
    return false;
  });
} catch (error) {
  console.log(`Monitor on failed, error: ${JSON.stringify(error, [`code`, `message`])}`);
}

inputMonitor.off('touch')

off(type: 'touch', receiver?: TouchEventReceiver): void

Disables listening for global touch (touchscreen) events.

Required permissions: ohos.permission.INPUT_MONITORING

System capability: SystemCapability.MultimodalInput.Input.InputMonitor

Parameters

NameTypeMandatoryDescription
typestringYesEvent type. This field has a fixed value of touch.
receiverTouchEventReceiverNoCallback for which listening is disabled. If this parameter is not specified, listening will be disabled for all callbacks registered by the current application.

Example

// Disable listening for a single callback.
let callback = (touchEvent: TouchEvent) => {
  console.log(`Monitor on success ${JSON.stringify(touchEvent)}`);
  return false;
};
try {
  inputMonitor.on('touch', callback);
  inputMonitor.off('touch', callback);
  console.log(`Monitor off success`);
} catch (error) {
  console.log(`Monitor execute failed, error: ${JSON.stringify(error, [`code`, `message`])}`);
}
// Cancel listening for all callbacks.
let callback = (touchEvent: TouchEvent) => {
  console.log(`Monitor on success ${JSON.stringify(touchEvent)}`);
  return false;
};
try {
  inputMonitor.on('touch', callback);
  inputMonitor.off('touch');
  console.log(`Monitor off success`);
} catch (error) {
  console.log(`Monitor execute failed, error: ${JSON.stringify(error, [`code`, `message`])}`);
}

inputMonitor.off('mouse')9+

off(type: 'mouse', receiver?: Callback<MouseEvent>): void

Disables listening for global mouse events.

Required permissions: ohos.permission.INPUT_MONITORING

System capability: SystemCapability.MultimodalInput.Input.InputMonitor

Parameters

NameTypeMandatoryDescription
typestringYesEvent type. This field has a fixed value of mouse.
receiverCallback<MouseEvent>NoCallback for which listening is disabled. If this parameter is not specified, listening will be disabled for all callbacks registered by the current application.

Example

// Disable listening for a single callback.
let callback = (mouseEvent: MouseEvent) => {
  console.log(`Monitor on success ${JSON.stringify(mouseEvent)}`);
  return false;
};
try {
  inputMonitor.on('mouse', callback);
  inputMonitor.off('mouse', callback);
  console.log(`Monitor off success`);
} catch (error) {
  console.log(`Monitor execute failed, error: ${JSON.stringify(error, [`code`, `message`])}`);
}
// Cancel listening for all callbacks.
let callback = (mouseEvent: MouseEvent) => {
  console.log(`Monitor on success ${JSON.stringify(mouseEvent)}`);
  return false;
};
try {
  inputMonitor.on('mouse', callback);
  inputMonitor.off('mouse');
  console.log(`Monitor off success`);
} catch (error) {
  console.log(`Monitor execute failed, error: ${JSON.stringify(error, [`code`, `message`])}`);
}

TouchEventReceiver

Defines the callback for touch (touchscreen) events.

Required permissions: ohos.permission.INPUT_MONITORING

System capability: SystemCapability.MultimodalInput.Input.InputMonitor

Parameters

NameTypeMandatoryDescription
touchEventTouchEventYesTouch event.

Return value

TypeDescription
BooleanResult indicating whether the touch event will be dispatched to the window. The value true indicates that the touch event will be dispatched to the window, and the value false indicates the opposite.

Example

try {
  inputMonitor.on('touch', touchEvent => {
    if (touchEvent.touches.length == 3) {// Three fingers are pressed.
      return true;
    }
    return false;
  });
} catch (error) {
    console.log(`Monitor on failed, error: ${JSON.stringify(error, [`code`, `message`])}`);
}

inputMonitor.on('pinch')10+

on(type: 'pinch', receiver: Callback<Pinch>): void

Enables listening for global touchpad pinch events.

Required permissions: ohos.permission.INPUT_MONITORING

System capability: SystemCapability.MultimodalInput.Input.InputMonitor

Parameters

NameTypeMandatoryDescription
typestringYesEvent type. This field has a fixed value of pinch.
receiverCallback<Pinch>YesCallback used to return the pinch event asynchronously.

Example

try {
  inputMonitor.on('pinch', (pinchEvent) => {
    console.log(`Monitor on success ${JSON.stringify(pinchEvent)}`);
    return false;
  });
} catch (error) {
  console.log(`Monitor on failed, error: ${JSON.stringify(error, [`code`, `message`])}`);
}

inputMonitor.off('pinch')10+

off(type: 'pinch', receiver?: Callback<Pinch>): void

Disables listening for global touchpad pinch events.

Required permissions: ohos.permission.INPUT_MONITORING

System capability: SystemCapability.MultimodalInput.Input.InputMonitor

Parameters

NameTypeMandatoryDescription
typestringYesEvent type. This field has a fixed value of pinch.
receiverCallback<Pinch>NoCallback for which listening is disabled. If this parameter is not specified, listening will be disabled for all callbacks registered by the current application.

Example

// Disable listening for a single callback.
import { Pinch } from '@ohos.multimodalInput.gestureEvent';

let callback = (pinchEvent: Pinch) => {
  console.log(`Monitor on success ${JSON.stringify(pinchEvent)}`);
  return false;
};
try {
  inputMonitor.on('pinch', callback);
  inputMonitor.off('pinch', callback);
  console.log(`Monitor off success`);
} catch (error) {
  console.log(`Monitor execute failed, error: ${JSON.stringify(error, [`code`, `message`])}`);
}
// Cancel listening for all callbacks.
import { Pinch } from '@ohos.multimodalInput.gestureEvent';

let callback = (pinchEvent: Pinch) => {
  console.log(`Monitor on success ${JSON.stringify(pinchEvent)}`);
  return false;
};
try {
  inputMonitor.on('pinch', callback);
  inputMonitor.off('pinch');
  console.log(`Monitor off success`);
} catch (error) {
  console.log(`Monitor execute failed, error: ${JSON.stringify(error, [`code`, `message`])}`);
}

inputMonitor.on('threeFingersSwipe')10+

on(type: 'threeFingersSwipe', receiver: Callback<ThreeFingersSwipe>): void

Enables listening for three-finger swipe events.

Required permissions: ohos.permission.INPUT_MONITORING

System capability: SystemCapability.MultimodalInput.Input.InputMonitor

Parameters

NameTypeMandatoryDescription
typestringYesEvent type. This field has a fixed value of threeFingersSwipe.
receiverCallback<ThreeFingersSwipe>YesCallback used to return the three-finger swipe event asynchronously.

Example

try {
  inputMonitor.on('threeFingersSwipe', (threeFingersSwipe) => {
    console.log(`Monitor on success ${JSON.stringify(threeFingersSwipe)}`);
    return false;
  });
} catch (error) {
  console.log(`Monitor on failed, error: ${JSON.stringify(error, [`code`, `message`])}`);
}

inputMonitor.off('threeFingersSwipe')10+

off(type: 'threeFingersSwipe', receiver?: Callback<ThreeFingersSwipe>): void

Disables listening for three-finger swipe events.

Required permissions: ohos.permission.INPUT_MONITORING

System capability: SystemCapability.MultimodalInput.Input.InputMonitor

Parameters

NameTypeMandatoryDescription
typestringYesEvent type. This field has a fixed value of threeFingersSwipe.
receiverCallback<ThreeFingersSwipe>NoCallback for which listening is disabled. If this parameter is not specified, listening will be disabled for all callbacks registered by the current application.

Example

// Disable listening for a single callback.
import { ThreeFingersSwipe } from '@ohos.multimodalInput.gestureEvent';

let callback = (threeFingersSwipe: ThreeFingersSwipe) => {
  console.log(`Monitor on success ${JSON.stringify(threeFingersSwipe)}`);
  return false;
};
try {
  inputMonitor.on('threeFingersSwipe', callback);
  inputMonitor.off("threeFingersSwipe", callback);
  console.log(`Monitor off success`);
} catch (error) {
  console.log(`Monitor execute failed, error: ${JSON.stringify(error, [`code`, `message`])}`);
}
// Cancel listening for all callbacks.
import { ThreeFingersSwipe } from '@ohos.multimodalInput.gestureEvent';

let callback = (threeFingersSwipe: ThreeFingersSwipe) => {
  console.log(`Monitor on success ${JSON.stringify(threeFingersSwipe)}`);
  return false;
};
try {
  inputMonitor.on("threeFingersSwipe", callback);
  inputMonitor.off("threeFingersSwipe");
  console.log(`Monitor off success`);
} catch (error) {
  console.log(`Monitor execute failed, error: ${JSON.stringify(error, [`code`, `message`])}`);
}

inputMonitor.on('fourFingersSwipe')10+

on(type: 'fourFingersSwipe', receiver: Callback<FourFingersSwipe>): void

Enables listening for four-finger swipe events.

Required permissions: ohos.permission.INPUT_MONITORING

System capability: SystemCapability.MultimodalInput.Input.InputMonitor

Parameters

NameTypeMandatoryDescription
typestringYesEvent type. This field has a fixed value of fourFingersSwipe.
receiverCallback<FourFingersSwipe>YesCallback used to return the four-finger swipe event asynchronously.

Example

try {
  inputMonitor.on('fourFingersSwipe', (fourFingersSwipe) => {
    console.log(`Monitor on success ${JSON.stringify(fourFingersSwipe)}`);
    return false;
  });
} catch (error) {
  console.log(`Monitor on failed, error: ${JSON.stringify(error, [`code`, `message`])}`);
}

inputMonitor.off('fourFingersSwipe')10+

off(type: 'fourFingersSwipe', receiver?: Callback<FourFingersSwipe>): void

Disables listening for four-finger swipe events.

Required permissions: ohos.permission.INPUT_MONITORING

System capability: SystemCapability.MultimodalInput.Input.InputMonitor

Parameters

NameTypeMandatoryDescription
typestringYesEvent type. This field has a fixed value of fourFingersSwipe.
receiverCallback<FourFingersSwipe>NoCallback for which listening is disabled. If this parameter is not specified, listening will be disabled for all callbacks registered by the current application.

Example

// Disable listening for a single callback.
import { FourFingersSwipe } from '@ohos.multimodalInput.gestureEvent';

let callback = (fourFingersSwipe: FourFingersSwipe) => {
  console.log(`Monitor on success ${JSON.stringify(fourFingersSwipe)}`);
  return false;
};
try {
  inputMonitor.on('fourFingersSwipe', callback);
  inputMonitor.off('fourFingersSwipe', callback);
  console.log(`Monitor off success`);
} catch (error) {
  console.log(`Monitor execute failed, error: ${JSON.stringify(error, [`code`, `message`])}`);
}
// Cancel listening for all callbacks.
import { FourFingersSwipe } from '@ohos.multimodalInput.gestureEvent';

let callback = (fourFingersSwipe: FourFingersSwipe) => {
  console.log(`Monitor on success ${JSON.stringify(fourFingersSwipe)}`);
  return false;
};
try {
  inputMonitor.on('fourFingersSwipe', callback);
  inputMonitor.off('fourFingersSwipe');
  console.log(`Monitor off success`);
} catch (error) {
  console.log(`Monitor execute failed, error: ${JSON.stringify(error, [`code`, `message`])}`);
}

你可能感兴趣的鸿蒙文章

harmony 鸿蒙APIs

harmony 鸿蒙System Common Events (To Be Deprecated Soon)

harmony 鸿蒙System Common Events

harmony 鸿蒙API Reference Document Description

harmony 鸿蒙Enterprise Device Management Overview (for System Applications Only)

harmony 鸿蒙BundleStatusCallback

harmony 鸿蒙@ohos.bundle.innerBundleManager (innerBundleManager)

harmony 鸿蒙@ohos.distributedBundle (Distributed Bundle Management)

harmony 鸿蒙@ohos.bundle (Bundle)

harmony 鸿蒙@ohos.enterprise.EnterpriseAdminExtensionAbility (EnterpriseAdminExtensionAbility)

  • 所属分类: 后端技术
  • 本文标签: 软件 鸿蒙
  • 版权声明: 本文链接 https://seaxiang.com/blog/e5e14d4d3ffd4cf6ace88f7d38ded415