IAnchor::Shift メソッド (textstor.h)
IAnchor::Shift メソッドは、テキスト ストリーム内でアンカーを前方または後方にシフトします。
構文
HRESULT Shift(
[in] DWORD dwFlags,
[in] LONG cchReq,
[out] LONG *pcch,
[in] IAnchor *paHaltAnchor
);
パラメーター
[in] dwFlags
アンカーの配置を回避するために使用されるビット フィールド。
値 | 意味 |
---|---|
|
アンカーはシフトされません。 フラグが設定されていない場合 (dwFlags = 0)、アンカーは他のパラメーター設定で指定されているようにシフトされます。 |
[in] cchReq
テキスト ストリーム内でアンカーを移動する文字数。
[out] pcch
テキスト ストリーム内で移動された実際の文字数。 失敗した場合、このメソッドは pcch を 0 に設定します。
[in] paHaltAnchor
シフトをブロックするアンカーへの参照。 シフトをブロックしないように するには、NULL に設定します。
戻り値
このメソッドは、これらの値のいずれかを返すことができます。
値 | 説明 |
---|---|
|
メソッドは正常に実行されました。 |
|
シフトに失敗しました。 |
|
入力パラメーター値が無効です。 |
|
dwFlags パラメーターの値は、このメソッドでは実装されていません。 |
注釈
cchReq パラメーターと pcch パラメーターには負の値を指定できます。つまり、テキスト ストリーム内で後方にシフトするか、正の場合は前方にシフトします。 ドキュメントの先頭または末尾が見つかった場合、領域の境界が検出された場合、または paHaltAnchor がシフトをブロックするアンカーを受け取った場合、シフトされる実際の文字数は cchReq 未満になる可能性があります。
paHaltAnchor がシフトをブロックするアンカーを受け取った場合、アプリケーションは paHaltAnchor が占める位置のシフトを切り捨てます。paHaltAnchor がシフトの対象となるテキストのスパン内にない場合、シフトとは関連性がなく、無視されます。
たとえば、 paHaltAnchor によって参照されるアンカーがストリーム内のアンカーより 8 文字先にあり、クライアントが Shift (0、10、pcch、paHaltAnchor) を呼び出した場合、終了時にアンカーは 8 文字しか移動しなくなります。 paHaltAnchor によって参照されるアンカーが移動する現在のアンカーと等しい場合、Shift はアンカーをまったく移動せずに正常に返されます。 この場合 、pcch は 0 になります。
アンカーシフトは、ドキュメントの先頭または末尾が見つかったかのように、常に領域の境界によってブロックされます。 これは、実際のシフト pcch が要求されたシフト cchReq よりも絶対値が小さい場合に、終了時に示されます。 この場合、クライアントは IAnchor::ShiftRegion を使用して、アンカーを隣接するリージョンにシフトできます。
要件
要件 | 値 |
---|---|
サポートされている最小のクライアント | Windows 2000 Professional [デスクトップ アプリのみ] |
サポートされている最小のサーバー | Windows 2000 Server [デスクトップ アプリのみ] |
対象プラットフォーム | Windows |
ヘッダー | textstor.h |
[DLL] | Msctf.dll |
再頒布可能パッケージ | Windows 2000 Professional の TSF 1.0 |