Класс TouchpadGesturesController

[Некоторые сведения связаны с предварительно выпущенным продуктом, который может быть существенно изменен до его коммерческого выпуска. Майкрософт не предоставляет никаких гарантий, явных или подразумеваемых в отношении информации, предоставленной здесь.]

Позволяет приложению регистрировать жесты глобальной сенсорной панели с участием трех или более контактов, предоставляя собственный обработчик вместо поведения системы по умолчанию.

Касания и пальцы, включающие три или более контактов, считаются глобальными жестами. Система сначала проверяет наличие контроллеров, зарегистрированных в процессе переднего плана при выполнении жеста глобальной сенсорной панели. Если ни один из них не найден и поддерживает жест, то жест будет перенаправлен в собственный обработчик системы. Контроллеры в фоновых процессах игнорируются.

Namespace: Windows. Пользовательского интерфейса. Вход

Members

Статические методы

IsSupported

static Boolean IsSupported();

Возвращает, поддерживается ли функция TouchpadGesturesController в системе.

CreateForProcess

static TouchpadGesturesController CreateForProcess();

Создает TouchpadGesturesController для связанного процесса. Для данного процесса можно создать несколько контроллеров, но если несколько контроллеров включены и объявляют поддержку одного и того же жеста, то только один получит связанные события.

Контроллер создает окно в потоке, на котором он создается, и поэтому требуется, чтобы поток был насосом сообщений. События контроллера будут вызваны на этом потоке, хотя его можно настроить из любого потока. Окно контроллера помечается как сенсорной панели с поддержкой RegisterTouchpadCapableWindow — см. в своей документации по способу влияния потока.

Свойства

Enabled

Boolean Enabled;

Возвращает или задает, включен ли контроллер. Если он отключен, он не будет рассматриваться системой как допустимый целевой объект для жестов маршрутизации.

ПоддерживаемыеGestures

TouchpadGlobalGestureKinds SupportedGestures;

Возвращает или задает жесты, поддерживаемые контроллером. Система будет направлять только жесты к контроллеру, если она объявила о поддержке. Манипуляции относятся к вводу сенсорной панели, в которой двигаются пальцы (например, прокрутка по сенсорной панели), в то время как действия вызваны неустанными пальцами (например, касанием или нажатием кнопки поверхности сенсорной панели без перемещения).

События

PointerPressed, PointerMoved, PointerReleased

event Windows.Foundation.TypedEventHandler<
    TouchpadGesturesController,
    Windows.UI.Core.PointerEventArgs> PointerPressed;

event Windows.Foundation.TypedEventHandler<
    TouchpadGesturesController,
    Windows.UI.Core.PointerEventArgs> PointerMoved;

event Windows.Foundation.TypedEventHandler<
    TouchpadGesturesController,
    Windows.UI.Core.PointerEventArgs> PointerReleased;

Эти события активируются для жестов стиля "манипуляции". Они работают идентично тому, как входные данные указателя обычно передаются в приложение— каждый палец активирует PointerPressed, за которым следует ноль или больше PointerMoved, завершенный PointerReleased.

Замечание

Входные данные указателя для сенсорной панели имеют некоторые отличия по сравнению с другими типами устройств указателя. Дополнительные сведения см. в примечаниях GetPointerTouchpadInfo .

Замечание

Хотя при обработке одного из этих событий разрешено использовать API Win32, такие как GetPointerInfo, для запроса сведений о входных данных указателя при обработке одного из этих событий не следует вызывать skipPointerFrameMessagesages. TouchpadGesturesController выполняет обработку входных данных в дополнение к активации события и пропуска сообщений указателя может привести к неправильной обработке.

GlobalActionPerformed

event Windows.Foundation.TypedEventHandler<
    TouchpadGesturesController,
    TouchpadGlobalActionEventArgs> GlobalActionPerformed;

Активируется для жестов стиля "action".

  • [X]FingerTap: активируется пользователем, выполняющим несколько пальцев на сенсорной панели.
  • [X]FingerPress: активируется пользователем, нажимая кнопку поверхности сенсорной панели с несколькими пальцами.
  • [X]FingerRelease: активируется пользователем, выпустив кнопку поверхности сенсорной панели после приведенного выше события.

TouchpadGlobalGestureKinds

[flags]
enum TouchpadGlobalGestureKinds
{
    None                        = 0x0,
    ThreeFingerManipulations    = 0x1,
    FourFingerManipulations     = 0x2,
    FiveFingerManipulations     = 0x4,
    ThreeFingerActions          = 0x8,
    FourFingerActions           = 0x10,
    FiveFingerActions           = 0x20,
};
Ценность Значение
Нет (0x0) Никаких жестов.
ThreeFingerManipulations (0x1) Жесты прокрутки и перетаскивания с тремя пальцами.
FourFingerManipulations (0x2) Жесты прокрутки и перетаскивания с четырьмя пальцами.
FiveFingerManipulations (0x4) Жесты прокрутки и перетаскивания с пятью пальцами.
ThreeFingerActions (0x8) Три пальца касания и нажатия кнопки жестов.
FourFingerActions (0x10) Касание и нажатие кнопки с четырьмя пальцами.
FiveFingerActions (0x20) Касание и нажатие кнопки с пятью пальцами.

TouchpadGlobalAction

enum TouchpadGlobalAction
{
    ThreeFingerTap,
    FourFingerTap,
    FiveFingerTap,
    ThreeFingerPress,
    FourFingerPress,
    FiveFingerPress,
    ThreeFingerRelease,
    FourFingerRelease,
    FiveFingerRelease,
};
Ценность Значение
ThreeFingerTap Коснитесь трех пальцев на сенсорной панели.
FourFingerTap Четыре пальца касания на сенсорной панели.
FiveFingerTap Пять пальцев коснитесь сенсорной панели.
ThreeFingerPress Три пальца нажмите на кнопку поверхности сенсорной панели.
FourFingerPress Четыре пальца нажмите на кнопку поверхности сенсорной панели.
FiveFingerPress Нажмите пять пальцев на кнопке поверхности сенсорной панели.
ThreeFingerRelease Отпустите после трех пальцев нажатия.
FourFingerRelease Отпустите после нажатия четырех пальцев.
FiveFingerRelease Отпустите после нажатия пятью пальцами.

Требования

Требование Ценность
Минимальный поддерживаемый клиент Windows 11
Namespace Windows. Пользовательского интерфейса. Вход
API на основе контракта Windows. Foundation.UniversalApiContract (версия 19)
IIDs ITouchpadGesturesController: 28c13cdd-e068-549f-89c6-1a440c6fc327, ITouchpadGesturesControllerStatics: 207ef171-1a73-51cd-a694-8840e09dbafa, ITouchpadGlobalActionEventArgs: 6edad206-e4e3-5f39-9d13-8575e8e8e2a12b

См. также