次の方法で共有


GetPointerTouchInfoHistory 関数 (winuser.h)

指定したポインターの現在のメッセージに結合された個々の入力 (存在する場合) に関連付けられているタッチベースの情報を取得します ( 型PT_TOUCH)。 最新の入力は返された履歴に含まれ、 GetPointerTouchInfo 関数によって返された最新の入力と同じです。

構文

BOOL GetPointerTouchInfoHistory(
  [in]            UINT32             pointerId,
  [in, out]       UINT32             *entriesCount,
  [out, optional] POINTER_TOUCH_INFO *touchInfo
);

パラメーター

[in] pointerId

情報を取得するポインターの識別子。

[in, out] entriesCount

touchInfo が指すバッファー内の構造体の数を指定する変数へのポインター。 GetPointerTouchInfoHistory が成功した場合、entriesCount は使用可能な構造体の合計数で更新されます。 使用できる構造体の合計数は、GetPointerInfo または GetPointerTouchInfo の呼び出しによって返されるPOINTER_INFO構造体の historyCount フィールドと同じです。

[out, optional] touchInfo

ポインター情報を受け取る POINTER_TOUCH_INFO 構造体の配列のアドレス。 *entriesCount が 0 の場合、このパラメーターは NULL にすることができます。

戻り値

関数が成功した場合、戻り値は 0 以外です。

関数が失敗した場合は、0 を返します。 詳細なエラー情報を得るには、GetLastError を呼び出します。

解説

アプリケーションがポインター入力メッセージを生成ほど速く処理しない場合は、一部の移動が結合される可能性があります。 アプリケーションは、( PT_TOUCH 型の) 合体可能なポインターを受信すると、 GetPointerTouchInfoHistory 関数を使用して、メッセージに結合されたすべての個々の入力 (存在する場合) の情報を取得できます。 取得された情報は、呼び出し元のスレッドによって最後に取得されたポインター メッセージに関連付けられていることに注意してください。 呼び出し元のスレッドが次のメッセージを取得すると、前のメッセージに関連付けられている情報が使用できなくなる可能性があります。

取得された情報は、逆の時系列順に表示され、返された配列の最初の行に最新のエントリが表示されます。 最新のエントリは、 GetPointerTouchInfo 関数によって返されるエントリと同じです。

指定されたバッファー内の行数が、使用可能なすべての履歴エントリを保持するのに不十分な場合、この関数は、最新のエントリを含むバッファーと、使用可能なエントリの合計数を含む *entriesCount で成功します。

ポインター フレームに、指定したポインター以外に追加のポインターが含まれない場合、この関数は成功し、指定されたポインターの情報のみを返します。

ポインター フレームに関連付けられている情報が使用できなくなった場合、この関数は最後のエラーが ERROR_NO_DATA に設定されて失敗します。

呼び出し元のスレッドが、ポインター メッセージが配信されたウィンドウ (入力が最初に配信されたウィンドウ、またはメッセージが転送された場所) を所有していない場合、この関数は最後のエラーを ERROR_ACCESS_DENIED に設定して失敗します。

指定したポインターが 型PT_TOUCHでない場合、この関数は最後のエラーが ERROR_DATATYPE_MISMATCH に設定されて失敗します。

要件

   
サポートされている最小のクライアント Windows 8 [デスクトップ アプリのみ]
サポートされている最小のサーバー Windows Server 2012 [デスクトップ アプリのみ]
対象プラットフォーム Windows
ヘッダー winuser.h (Windows.h を含む)
Library User32.lib
[DLL] User32.dll

関連項目

関数

GetPointerFrameTouchInfo

GetPointerFrameTouchInfoHistory

GetPointerTouchInfo