Evento Report.KeyPress (Access)

O evento KeyPress ocorre quando o usuário pressiona e libera uma tecla ou combinação de teclas que corresponde a um código ANSI enquanto um relatório tem o foco. Esse evento também ocorre se você enviar um pressionamento de tecla ANSI para um relatório usando a ação EnviarSequênciaDeCaracteres em uma macro ou da instrução SendKeys no Visual Basic.

Sintaxe

mais simples. KeyPress (KeyAscii)

expressão Uma variável que representa um objeto Report .

Parâmetros

Nome Obrigatório/Opcional Tipo de dados Descrição
KeyAscii Obrigatório Integer Returns a numeric ANSI key code. The KeyAscii argument is passed by reference; changing it sends a different character to the object. Setting the KeyAscii argument to 0 cancels the keystroke so that the object doesn't recognize that a key was pressed.

Comentários

Para executar um macro ou procedimento de evento quando esse evento ocorrer, defina a propriedade OnKeyPress com o nome da macro ou como [procedimento do evento].

Um relatório também receberá todos os eventos de teclado, mesmo aqueles que ocorrem para controles, se você definir a propriedade KeyPreview do relatório como Sim. Com a configuração dessa propriedade, todos os eventos de teclado ocorrem primeiro para o relatório e, em seguida, para o controle que tem o foco. Uma determinada combinação de teclas pode executar uma ação, independentemente do controle que tenha o foco. Por exemplo, talvez você queira que a combinação de teclas Ctrl+X sempre execute a mesma ação em um relatório.

Se você pressionar e manter pressionada uma tecla ANSI, os eventos KeyDown e KeyPress se alternarão repetidamente (KeyDown, KeyPress, KeyDown, KeyPress, KeyPress, etc.) até que você solte a tecla e, em seguida, o evento KeyUp ocorrerá.

Um evento KeyPress pode envolver qualquer caractere de teclado imprimível, a tecla Ctrl combinada com um caractere do alfabeto padrão ou um caractere especial e a tecla Enter ou Backspace. Use os procedimentos de evento KeyDown e KeyUp para lidar com qualquer pressionamento de tecla não reconhecido pelo evento KeyPress , como teclas de função, teclas de navegação e qualquer combinação delas com modificadores de teclado (teclas Alt, Shift ou Ctrl). Ao contrário os eventos KeyDown e KeyUp, o evento KeyPress não indica o estado físico do teclado; em vez disso, ele indica o caractere ANSI correspondente à tecla pressionada ou combinações de teclas.

KeyPress interpreta as versões maiúscula e minúscula de cada caractere como códigos de teclas distintos e, portanto, como dois caracteres distintos.

Observação

A tecla Backspace faz parte do conjunto de caracteres ANSI, mas a tecla Delete não. Se você excluir um caractere em um controle usando a tecla Backspace, causará um evento KeyPress ; se você usar a tecla Delete, você não deve.

Os eventos KeyDown e KeyPress ocorrem quando você pressiona ou envia uma tecla ANSI. O evento KeyUp ocorre depois de qualquer evento para um controle gerado pelo pressionamento ou envio da tecla. Se um pressionamento de tecla faz o foco mover de um controle para outro controle, o evento KeyDown ocorra para o primeiro controle, enquanto os eventos KeyPress e KeyUp ocorrem para o segundo controle.

Suporte e comentários

Tem dúvidas ou quer enviar comentários sobre o VBA para Office ou sobre esta documentação? Confira Suporte e comentários sobre o VBA para Office a fim de obter orientação sobre as maneiras pelas quais você pode receber suporte e fornecer comentários.