次の方法で共有


_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 インターフェイスの両方に対して生成されます。 ProcessUp の呼び出しで TOUCHINPUT 構造体の値を使用している場合、座標はピクセルの 100 分の 1 になります。

メモ 慣性を使用する場合、 IInertiaProcessor::Complete を呼び出すと、現在の操作が強制的に外挿され、大きな差分が ManipulationCompleted イベントに渡される可能性があります。 この問題に対処するには、デルタ イベントに加えて、完了したイベントに対して更新を実行します。
 

次のコードは、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
ヘッダー manipulations.h (Manipulations.h を含む)

こちらもご覧ください

アンマネージド コードへの操作のサポートの追加

アンマネージ コードでの慣性の処理

メソッド

_IManipulationEvents