IInkStrokeDisp::SetPoints メソッド (msinkaut.h)

X、Y 値の配列を使用して 、IInkStrokeDisp のポイントを設定します。

構文

HRESULT SetPoints(
  [in]           VARIANT Points,
  [in, optional] long    Index,
  [in, optional] long    Count,
  [out, retval]  long    *NumberOfPointsSet
);

パラメーター

[in] Points

インデックスから始まるストローク内のポイントを置き換える新しいポイントの配列。 これは、フォーム x0、y0、x1、y1、x2、y2 などの交互の値で表されるポイントを持つ Long の配列を含む VARIANT です。

VARIANT 構造体の詳細については、「 COM ライブラリの使用」を参照してください。

[in, optional] Index

省略可能。 変更するストロークの最初のポイントの 0 から始まるインデックス。 ItemSelectionConstants 列挙型で定義されているISC_FirstElement既定値は、ストロークの最初のポイントが変更されることを指定します。

[in, optional] Count

省略可能。 変更するストローク内のポイントの数。 ItemSelectionConstants 列挙型で定義されているISC_AllElements既定値は、ストローク内のすべてのポイントが変更されることを指定します。

[out, retval] NumberOfPointsSet

このメソッドから制御が戻るときに、実際に設定されたパケット数が格納されます。

戻り値

このメソッドは、これらの値のいずれかを返すことができます。

リターン コード 説明
S_OK
正常終了しました。
E_POINTER
パラメーターに無効なポインターが含まれていました。
E_INVALIDARG
無効なインデックス (範囲外)、または points パラメーター。 正しい形式ではありません。
E_INK_EXCEPTION
メソッド内で例外が発生しました。

注釈

このメソッドは、ストローク内のポイント数を変更しません。 ストローク内のポイント数を変更するには、新しいストロークを作成するか、ストロークを分割する必要があります。

このメソッドでは、ストロークを切り捨てることは提供されません。 points 配列に含まれるポイントがストロークよりも少ない場合、ストローク内のポイントの残りの部分は変更されません。

このメソッドでは、ストロークの拡張は提供されません。 points 配列にストロークよりも多くのポイントが含まれている場合、追加のポイントは使用されません。 カウントが配列内のポイント数を超える場合、配列内のポイント数のみが変更されます。

SetPoints を呼び出した後にストロークを描画するには、InvalidateRect 関数を呼び出します。

要件

要件
サポートされている最小のクライアント Windows XP タブレット PC エディション [デスクトップ アプリのみ]
サポートされている最小のサーバー サポートなし
対象プラットフォーム Windows
ヘッダー msinkaut.h
Library InkObj.dll

こちらもご覧ください

IInkStrokeDisp インターフェイス

ItemSelectionConstants 列挙