Compartilhar via


Método ITfRange::SetText (msctf.h)

O método ITfRange::SetText substitui o conteúdo coberto pelo intervalo de texto. Para um objeto de intervalo vazio, o método resulta em uma inserção no local do intervalo. Se o novo conteúdo for uma cadeia de caracteres vazia (cch = 0), o método excluirá o conteúdo existente dentro do intervalo.

Sintaxe

HRESULT SetText(
  [in] TfEditCookie ec,
  [in] DWORD        dwFlags,
  [in] const WCHAR  *pchText,
  [in] LONG         cch
);

Parâmetros

[in] ec

Identifica o contexto de edição obtido de ITfDocumentMgr::CreateContext ou ITfEditSession::D oEditSession.

[in] dwFlags

Especifica o comportamento opcional para correção de conteúdo. Se definido como o valor de TF_ST_CORRECTION, a operação será uma correção do conteúdo existente, não uma criação de novo conteúdo e as propriedades de texto originais serão preservadas.

[in] pchText

Ponteiro para um buffer que contém o texto para substituir o conteúdo do intervalo.

[in] cch

Contém o número de caracteres em pchText.

Valor retornado

Esse método pode retornar um desses valores.

Valor Descrição
S_OK
O método foi bem-sucedido.
E_FAIL
Ocorreu um erro não especificado.
E_INVALIDARG
Um ou mais parâmetros são inválidos.
TF_E_COMPOSITION_REJECTED
O proprietário do contexto rejeitou uma composição padrão.
TF_E_NOLOCK
O valor do parâmetro ec é um cookie inválido ou o chamador não tem um bloqueio de leitura/gravação.
TF_E_RANGE_NOT_COVERED
O intervalo não está dentro da composição ativa do chamador.

Comentários

Quando um intervalo abrange várias regiões, chame ITfRange::SetText em cada região separadamente. Caso contrário, o método poderá falhar.

Por padrão, os serviços de texto iniciam e encerram uma composição temporária que abrange o intervalo, para garantir que os proprietários de contexto reconheçam consistentemente composições em texto editado. Se o proprietário da composição rejeitar uma composição padrão, o método retornará TF_E_COMPOSITION_REJECTED. As composições padrão só serão criadas se o chamador ainda não tiver iniciado uma. Se o chamador tiver uma composição ativa, a chamada falhará.

O TF_CHAR_EMBEDDED caractere de espaço reservado do objeto pode não ser passado para esse método. ITfRange::InsertEmbedded deve ser usado.

Para inserir texto, o método ITFInsertAtSelection:InsertTextAtSelection não exige que um intervalo de seleção seja alocado e evita o requisito de que o intervalo corresponda à seleção.

Requisitos

   
Cliente mínimo com suporte Windows 2000 Professional [aplicativos da área de trabalho | Aplicativos UWP]
Servidor mínimo com suporte Windows 2000 Server [aplicativos da área de trabalho | Aplicativos UWP]
Plataforma de Destino Windows
Cabeçalho msctf.h
DLL Msctf.dll
Redistribuível TSF 1.0 no Windows 2000 Professional

Confira também

ITFInsertAtSelection:InsertTextAtSelection

ITfDocumentMgr::CreateContext

ITfEditSession::D oEditSession

ITfRange

ITfRange::GetText

ITfRange::InsertEmbedded

Constantes de estrutura diversas

Repositórios de Texto