Compartilhar via


Método ITfContextOwner::GetACPFromPoint (msctf.h)

O método ITfContextOwner::GetACPFromPoint converte um ponto nas coordenadas da tela em uma posição de caractere de aplicativo.

Sintaxe

HRESULT GetACPFromPoint(
  [in]  const POINT *ptScreen,
  [in]  DWORD       dwFlags,
  [out] LONG        *pacp
);

Parâmetros

[in] ptScreen

Ponteiro para a estrutura POINT com as coordenadas de tela do ponto.

[in] dwFlags

Especifica a posição do caractere a ser retornada com base nas coordenadas de tela do ponto em relação a uma caixa delimitadora de caracteres. Por padrão, a posição do caractere retornada é a caixa delimitadora de caracteres que contém as coordenadas de tela do ponto. Se o ponto estiver fora da caixa delimitadora de um caractere, o método retornará NULL ou TF_E_INVALIDPOINT.

Se o sinalizador GXFPF_ROUND_NEAREST for especificado para esse parâmetro e as coordenadas da tela do ponto estiverem contidas em uma caixa delimitadora de caracteres, a posição do caractere retornada será a borda delimitada mais próxima das coordenadas da tela do ponto.

Se o sinalizador GXFPF_NEAREST for especificado para esse parâmetro e as coordenadas de tela do ponto não estiverem contidas em uma caixa delimitadora de caracteres, a posição de caractere mais próxima será retornada.

Os sinalizadores de bits podem ser combinados.

[out] pacp

Recebe a posição do caractere que corresponde às coordenadas da tela do ponto

Retornar valor

Esse método pode retornar um desses valores.

Valor Descrição
S_OK
O método foi bem-sucedido.
TS_E_INVALIDPOINT
O parâmetro ptScreen não está dentro da caixa delimitadora de nenhum caractere.
TS_E_NOLAYOUT
O aplicativo não calculou um layout de texto.

Comentários

O ponto 1 está na caixa delimitadora de caracteres e o ponto 2 está fora da caixa delimitadora de caracteres. Use a ilustração para determinar a posição do caractere retornada com base nos sinalizadores usados no parâmetro dwFlags .

Ponto 1

  • Default-- pacp = 0 --As coordenadas de tela do ponto estão dentro da caixa delimitadora de caracteres da Posição 0 do Caractere.
  • GXFPF_ROUND_NEAREST-- pacp = 1 --As coordenadas de tela do ponto estão mais próximas da Posição de Intervalo 1, que é a posição inicial do intervalo da Posição 1 do Caractere.
  • GXFPF_NEAREST-- pacp = 0 --O comportamento padrão ocorre porque o ponto está dentro da caixa delimitadora de caracteres da Posição 0 do Caractere.
Ponto 2
  • Default-- hr = TF_E_INVALIDPOINT --As coordenadas de tela do ponto estão fora de uma caixa delimitadora de caracteres.
  • GXFPF_ROUND_NEAREST-- hr = TF_E_INVALIDPOINT --O comportamento padrão ocorre porque as coordenadas de tela do ponto estão fora de uma caixa delimitadora de caracteres.
  • GXFPF_NEAREST-- pacp = 1 --A posição de caractere mais próxima das coordenadas da tela do ponto é a Posição 1 do Caractere.

Requisitos

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

Confira também

ITextStoreACP::GetACPFromPoint

ITfContextOwner

ITfContextView::GetRangeFromPoint

TsViewCookie