Condividi tramite


Metodo IAnchor::Shift (textstor.h)

Il metodo IAnchor::Shift sposta l'ancoraggio avanti o indietro all'interno di un flusso di testo.

Sintassi

HRESULT Shift(
  [in]  DWORD   dwFlags,
  [in]  LONG    cchReq,
  [out] LONG    *pcch,
  [in]  IAnchor *paHaltAnchor
);

Parametri

[in] dwFlags

Campi di bit utilizzati per evitare il posizionamento dell'ancoraggio.

Valore Significato
TS_SHIFT_COUNT_ONLY
L'ancoraggio non viene spostato. Se il flag non è impostato (dwFlags = 0), l'ancoraggio verrà spostato come specificato dalle altre impostazioni del parametro.

[in] cchReq

Numero di caratteri per spostare l'ancoraggio all'interno del flusso di testo.

[out] pcch

Numero effettivo di caratteri spostati all'interno del flusso di testo. Se ha esito negativo, il metodo imposterà pcch su zero.

[in] paHaltAnchor

Riferimento a un ancoraggio che blocca lo spostamento. Impostare su NULL per evitare di bloccare lo spostamento.

Valore restituito

Questo metodo può restituire uno di questi valori.

Valore Descrizione
S_OK
Il metodo è stato eseguito correttamente.
E_FAIL
Lo spostamento non è riuscito.
E_INVALIDARG
Il valore di un parametro di input non è valido.
E_NOTIMPL
Il valore del parametro dwFlags non viene implementato in questo metodo.

Commenti

I parametri cchReq e pcch possono essere negativi, ovvero uno spostamento indietro nel flusso di testo o positivo, ovvero uno spostamento in avanti. Il numero effettivo di caratteri spostati può essere minore di cchReq se viene rilevato l'inizio o la fine del documento, viene rilevato un limite di area o se paHaltAnchor riceve un ancoraggio che blocca lo spostamento.

Se paHaltAnchor riceve un ancoraggio che blocca lo spostamento, l'applicazione tronca il turno nella posizione occupata da paHaltAnchor. Se paHaltAnchor non è compreso nell'intervallo di testo coperto dallo spostamento, non ha rilevanza per lo spostamento e viene ignorato.

Ad esempio, se l'ancoraggio a cui fa riferimento paHaltAnchor si trova 8 caratteri prima dell'ancoraggio nel flusso e un client chiama Shift (0, 10, pcch, paHaltAnchor), all'uscita l'ancoraggio avrà spostato solo 8 caratteri. Se l'ancoraggio a cui fa riferimento paHaltAnchor è uguale all'ancoraggio corrente da spostare, shift restituirà correttamente senza spostare l'ancoraggio. In questo caso pcch sarà 0.

Lo spostamento di ancoraggio viene sempre bloccato dai limiti dell'area, come se fosse stato rilevato l'inizio o la fine del documento. Questo valore verrà indicato all'uscita dal pcch di spostamento effettivo minore in valore assoluto rispetto al cambio richiesto cchReq. In questo caso, i client possono usare IAnchor::ShiftRegion per spostare l'ancoraggio in un'area adiacente.

Requisiti

Requisito Valore
Client minimo supportato Windows 2000 Professional [solo app desktop]
Server minimo supportato Windows 2000 Server [solo app desktop]
Piattaforma di destinazione Windows
Intestazione textstor.h
DLL Msctf.dll
Componente ridistribuibile TSF 1.0 in Windows 2000 Professional

Vedi anche

IAnchor

IAnchor::ShiftRegion