Share via


Método ITextSelection::MoveRight (tom.h)

Generaliza a funcionalidade da tecla seta para a direita.

Sintaxe

HRESULT MoveRight(
  long Unit,
  long Count,
  long Extend,
  long *pDelta
);

Parâmetros

Unit

Tipo: long

Unidade a ser usada. Pode ser um dos seguintes.

Valor Combinação de chaves correspondente Significado
tomCharacter Seta para a Direita Mova uma posição de caractere para a direita. Esse é o padrão.
tomWord Ctrl+Seta para a Direita Mova uma palavra para a direita.
 

Observação: se Count for menor que zero, o movimento será para a esquerda.

Count

Tipo: long

Número de unidades a serem passadas. O valor padrão é 1. Se Count for menor que zero, o movimento será para a esquerda.

Extend

Tipo: long

Sinalizador que indica como alterar a seleção. Se Extend for zero (ou tomMove), o método recolherá a seleção para um ponto de inserção na extremidade ativa e a moverá. Se Extend for 1 (ou tomExtend), o método moverá a extremidade ativa e deixará a outra extremidade sozinha. O valor padrão é zero. Um valor Extend diferente de zero corresponde à tecla Shift que está sendo pressionada, além da combinação de teclas descrita em Unidade.

pDelta

Tipo: long*

A contagem real de unidades que o ponto de inserção ou a extremidade ativa são movidas para a esquerda. Este parâmetro pode ser nulo. Recolher a seleção, quando Estender for 0, conta como uma unidade.

Retornar valor

Tipo: HRESULT

O método retorna um valor HRESULT . Se o método for bem-sucedido, ele retornará S_OK. Se o método falhar, ele retornará um dos seguintes códigos de erro. Para obter mais informações sobre códigos de erro COM, consulte Tratamento de erros em COM.

Código de retorno Descrição
E_INVALIDARG
A unidade não é válida.
S_FALSE
Falha por algum outro motivo.

Comentários

Os métodos de movimentação do Microsoft WordBasic, como CharRight, CharLeft, WordRight e WordLeft , são híbridos que podem fazer quatro coisas que estão intimamente relacionadas ao comportamento de edição de tecla de seta padrão:

  • Mova o ponto de inserção atual se não houver seleção.
  • Mova o final ativo da seleção se houver uma seleção.
  • Transforme um ponto de inserção em uma seleção e vice-versa.
  • Retornar um booliano informando se o movimento ocorreu.
O argumento Extend de MoveLeft e MoveRight permite que você seja consistente com os três primeiros itens acima e o pDelta é uma generalização do quarto. Por exemplo, considerando uma seleção, s, que consiste em um único intervalo, você tem as seguintes correspondências (para caracteres da esquerda para a direita).
ITextSelection WordBasic Função
s.MoveRight tomWord, 1, 1 WordRight 1,1 Move o final ativo uma palavra para a direita.
s.MoveLeft tomCharacter, 1, 1 CharLeft 1,1 Move o final ativo um caractere para a esquerda.
 

Como no WordBasic, se Count for menor que zero, os significados de esquerda e direita serão intercambiáveis, o equivalente MoveLeft (Unit, Count, Extend) a MoveRight(Unit, -Count, Extend).

Semelhante ao WordBasic e ao comportamento da interface do usuário da tecla de seta para a direita, chamar MoveRight(Unit, Count) em uma seleção degenerada move o ponto de inserção o número especificado de unidades. Em um intervalo degenerado, chamar MoveRight(Unit, Count, 1) onde Count é maior que zero faz com que o intervalo se torne não descrigente com a extremidade direita sendo a extremidade ativa.

Quando Extend é tomExtend (ou não é zero), MoveRight move apenas o final ativo da seleção, deixando a outra extremidade onde ela está. No entanto, se Extend for igual a zero e a seleção for iniciada como um intervalo não geral, MoveRight(Unit, Count) em Count que é maior que zero move a extremidade Count ativa – 1 unidade para a direita e move a outra extremidade para a extremidade ativa. Em outras palavras, ele faz um ponto de inserção na extremidade ativa. Recolher o intervalo conta como uma unidade. Assim, MoveRight(tomCharacter) converte uma seleção não descritiva em uma degenerada na extremidade direita da seleção. Aqui, Count tem o valor padrão de 1 e Extend tem o valor padrão de zero. Este exemplo corresponde a pressionar a tecla seta para a direita. MoveLeft e MoveRight estão relacionados aos métodos de movimentação ITextRange, mas diferem porque usam explicitamente o final ativo (o final movido pressionando a tecla Shift).

Requisitos

Requisito Valor
Cliente mínimo com suporte Windows Vista [somente aplicativos da área de trabalho]
Servidor mínimo com suporte Windows Server 2003 [somente aplicativos da área de trabalho]
Plataforma de Destino Windows
Cabeçalho tom.h
DLL Msftedit.dll

Confira também

Conceitual

ITextRange

ITextSelection

Moveleft

Referência

Modelo de objeto de texto