Метод _IManipulationEvents::ManipulationCompleted (manipulations.h)
Обрабатывает событие при завершении манипуляции или инерции.
Синтаксис
HRESULT ManipulationCompleted(
[in] FLOAT x,
[in] FLOAT y,
[in] FLOAT cumulativeTranslationX,
[in] FLOAT cumulativeTranslationY,
[in] FLOAT cumulativeScale,
[in] FLOAT cumulativeExpansion,
[in] FLOAT cumulativeRotation
);
Параметры
[in] x
Координата источника x в определяемых пользователем координатах.
[in] y
Исходная координата по оси Y в определяемых пользователем координатах.
[in] cumulativeTranslationX
Общее преобразование оси X с момента начала манипуляции в определяемых пользователем координатах.
[in] cumulativeTranslationY
Общее преобразование оси Y с момента начала манипуляции в определяемых пользователем координатах.
[in] cumulativeScale
Общий масштаб изменяется с начала манипуляции в процентах от исходного размера.
[in] cumulativeExpansion
Общее расширение изменяется с момента начала манипуляции в определяемых пользователем координатах.
[in] cumulativeRotation
Общее изменение поворота с момента начала манипуляции в радианах.
Возвращаемое значение
Если метод завершается успешно, возвращает значение S_OK. В случае сбоя возвращается код ошибки HRESULT.
Комментарии
События манипуляции создаются для интерфейсов IInertiaProcessor и IManipulationProcessor . При использовании значений из структуры TOUCHINPUT в вызовах ProcessUp координаты будут в сотых пикселях.
Примеры
В следующем коде показана реализация метода ManipulationCompleted.
HRESULT STDMETHODCALLTYPE CManipulationEventSink::ManipulationCompleted(
/* [in] */ FLOAT x,
/* [in] */ FLOAT y,
/* [in] */ FLOAT cumulativeTranslationX,
/* [in] */ FLOAT cumulativeTranslationY,
/* [in] */ FLOAT cumulativeScale,
/* [in] */ FLOAT cumulativeExpansion,
/* [in] */ FLOAT cumulativeRotation)
{
m_cCompletedEventCount ++;
m_fX = x;
m_fY = y;
m_fCumulativeTranslationX = cumulativeTranslationX;
m_fCumulativeTranslationY = cumulativeTranslationY;
m_fCumulativeScale = cumulativeScale;
m_fCumulativeExpansion = cumulativeExpansion;
m_fCumulativeRotation = cumulativeRotation;
// Place your code handler here to do any operations based on the manipulation.
return S_OK;
}
Требования
Требование | Значение |
---|---|
Минимальная версия клиента | Windows 7 [только классические приложения] |
Минимальная версия сервера | Windows Server 2008 R2 [только классические приложения] |
Целевая платформа | Windows |
Header | manipulations.h (включая Manipulations.h) |
См. также раздел
Добавление поддержки манипуляций в неуправляемый код