_IManipulationEvents ::ManipulationDelta, méthode (manipulations.h)
Gère les événements qui se produisent lorsqu’un objet manipulé change.
Syntaxe
HRESULT ManipulationDelta(
[in] FLOAT x,
[in] FLOAT y,
[in] FLOAT translationDeltaX,
[in] FLOAT translationDeltaY,
[in] FLOAT scaleDelta,
[in] FLOAT expansionDelta,
[in] FLOAT rotationDelta,
[in] FLOAT cumulativeTranslationX,
[in] FLOAT cumulativeTranslationY,
[in] FLOAT cumulativeScale,
[in] FLOAT cumulativeExpansion,
[in] FLOAT cumulativeRotation
);
Paramètres
[in] x
Coordonnée x d’origine dans les coordonnées définies par l’utilisateur.
[in] y
Coordonnée y d’origine dans les coordonnées définies par l’utilisateur.
[in] translationDeltaX
Changement de traduction concernant l’axe X dans les coordonnées définies par l’utilisateur depuis le dernier événement.
[in] translationDeltaY
Modification de la traduction de l’axe y dans les coordonnées définies par l’utilisateur depuis le dernier événement.
[in] scaleDelta
L’échelle change depuis l’événement précédent en pourcentage de l’échelle précédente.
[in] expansionDelta
L’expansion a changé depuis l’événement précédent dans les coordonnées définies par l’utilisateur.
[in] rotationDelta
Changement de rotation depuis l’événement précédent en radians.
[in] cumulativeTranslationX
Traduction de l’axe X depuis le début de la manipulation en coordonnées définies par l’utilisateur.
[in] cumulativeTranslationY
Traduction de l’axe y depuis le début de la manipulation en coordonnées définies par l’utilisateur.
[in] cumulativeScale
Changement d’échelle depuis le début de la manipulation en pourcentage de la taille d’origine.
[in] cumulativeExpansion
L’expansion a changé depuis le début de la manipulation dans les coordonnées définies par l’utilisateur.
[in] cumulativeRotation
Le changement de rotation depuis le début de la manipulation dans les radians.
Valeur retournée
Si la méthode réussit, retourne S_OK. En cas d’échec, elle retourne un code d’erreur HRESULT.
Remarques
Les événements de manipulation sont générés pour les interfaces IInertiaProcessor et IManipulationProcessor . Si vous utilisez les valeurs de la structure TOUCHINPUT dans les appels à ProcessMove, les coordonnées sont exprimées en centièmes de pixel.
Exemples
Le code suivant montre une implémentation de la méthode ManipulationDelta.
HRESULT STDMETHODCALLTYPE CManipulationEventSink::ManipulationDelta(
/* [in] */ FLOAT x,
/* [in] */ FLOAT y,
/* [in] */ FLOAT translationDeltaX,
/* [in] */ FLOAT translationDeltaY,
/* [in] */ FLOAT scaleDelta,
/* [in] */ FLOAT expansionDelta,
/* [in] */ FLOAT rotationDelta,
/* [in] */ FLOAT cumulativeTranslationX,
/* [in] */ FLOAT cumulativeTranslationY,
/* [in] */ FLOAT cumulativeScale,
/* [in] */ FLOAT cumulativeExpansion,
/* [in] */ FLOAT cumulativeRotation)
{
m_cDeltaEventCount ++;
// Place your code handler here to do any operations based on the manipulation.
return S_OK;
}
Configuration requise
Condition requise | Valeur |
---|---|
Client minimal pris en charge | Windows 7 [applications de bureau uniquement] |
Serveur minimal pris en charge | Windows Server 2008 R2 [applications de bureau uniquement] |
Plateforme cible | Windows |
En-tête | manipulations.h (include Manipulations.h) |
Voir aussi
Ajout de la prise en charge de la manipulation au code non managé