Partager via


Méthode IStylusPlugin ::CustomStylusDataAdded (rtscom.h)

Avertit le plug-in d’implémentation que des données de stylet personnalisées sont disponibles.

Syntaxe

HRESULT CustomStylusDataAdded(
  [in] IRealTimeStylus *piRtsSrc,
  [in] const GUID      *pGuidId,
  [in] ULONG           cbData,
  [in] const BYTE      *pbData
);

Paramètres

[in] piRtsSrc

Objet RTS (RealTimeStylus Class ) qui a envoyé la notification.

[in] pGuidId

Identificateur global unique (GUID) pour les données personnalisées.

[in] cbData

Taille, en caractères, de la mémoire tampon pbData. Les valeurs valides sont comprises entre 0 et 0x7FFF, inclusivement.

[in] pbData

Pointeur vers la mémoire tampon contenant les données personnalisées envoyées par l’objet RTS.

Valeur retournée

Pour obtenir une description des valeurs de retour, consultez Classes et interfaces RealTimeStylus.

Remarques

Cette méthode est appelée lorsque la méthode IStylusPlugin ::CustomStylusDataAdded est en cours de traitement. Les données personnalisées sont transmises dans le membre pbData , avec un GUID dans le membre pGuidId pour transmettre les informations de type. Cette classe ne peut pas être héritée.

Exemples

L’exemple de code C++ suivant implémente une méthode IStylusPlugin ::CustomStylusDataAdded qui gère les données d’un événement de mouvement et définit un contrôle de texte statique, m_pStatusControl, sur une représentation sous forme de chaîne des données de mouvement.

STDMETHODIMP CGestureHandler::CustomStylusDataAdded( 
            /* [in] */ IRealTimeStylus *piRtsSrc,
            /* [in] */ const GUID *pGuidId,
            /* [in] */ ULONG cbData,
            /* [in] */ const BYTE *pbData)
{
	// Did we get passed gesture data?
	if (*pGuidId == GUID_GESTURE_DATA)
	{
		// Another way to check for gestures is to see if the data
		// is the right size and actually points to something
		if ((cbData == sizeof(GESTURE_DATA)) && (pbData != NULL))
		{
			// Access the data coming as a GESTURE_DATA structure
			GESTURE_DATA* pGD = (GESTURE_DATA*)pbData;

			CString strStatus;
			CString strGestureId;
			
			// Helper function that maps the gesture ID to a string value
			SetGestureString(pGD->gestureId, &strGestureId);

			strStatus.Format(L"Gesture=%s\tConfidence=%d\tStrokes=%d", strGestureId, pGD->recoConfidence, pGD->strokeCount);
			m_pStatusControl->SetWindowTextW(strStatus);
		}
		else
		{
			m_pStatusControl->SetWindowTextW(L"Not gesture data.");
		}
	}
	else
	{
		m_pStatusControl->SetWindowTextW(L"Not gesture data.");
	}

	return S_OK;
}

Configuration requise

Condition requise Valeur
Client minimal pris en charge Windows XP Édition Tablet PC [applications de bureau uniquement]
Serveur minimal pris en charge Aucun pris en charge
Plateforme cible Windows
En-tête rtscom.h
DLL RTSCom.dll

Voir aussi

Classe GestureRecognizer

IGestureRecognizer, interface

Istylusasyncplugin

IStylusPlugin, interface

IStylusSyncPlugin