IStylusPlugin::CustomStylusDataAdded メソッド (rtscom.h)
カスタム スタイラス データが使用可能であることを実装プラグインに通知します。
構文
HRESULT CustomStylusDataAdded(
[in] IRealTimeStylus *piRtsSrc,
[in] const GUID *pGuidId,
[in] ULONG cbData,
[in] const BYTE *pbData
);
パラメーター
[in] piRtsSrc
通知を送信した RealTimeStylus クラス (RTS) オブジェクト。
[in] pGuidId
カスタム データのグローバル一意識別子 (GUID)。
[in] cbData
バッファー pbData のサイズ (chars 単位)。 有効な値は、0 ~ 0x7FFFです(両端を含む)。
[in] pbData
RTS オブジェクトによって送信されるカスタム データを含むバッファーへのポインター。
戻り値
戻り値の説明については、「 RealTimeStylus クラスとインターフェイス」を参照してください。
注釈
このメソッドは、 IStylusPlugin::CustomStylusDataAdded メソッド の処理中に呼び出されます。 カスタム データは pbData メンバーに渡され、型情報を渡すために pGuidId メンバーに GUID が渡されます。 このクラスは継承できません。
例
次の C++ コード例では、ジェスチャ イベントからのデータを処理し、m_pStatusControl
静的テキスト コントロール である をジェスチャ データの文字列表現に設定する IStylusPlugin::CustomStylusDataAdded メソッドを実装します。
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;
}
要件
要件 | 値 |
---|---|
サポートされている最小のクライアント | Windows XP Tablet PC Edition [デスクトップ アプリのみ] |
サポートされている最小のサーバー | サポートなし |
対象プラットフォーム | Windows |
ヘッダー | rtscom.h |
[DLL] | RTSCom.dll |