Foros del Web » Programación para mayores de 30 ;) » .NET »

KeyPressEventArgs, tecla "Intro" y "Supr"

Estas en el tema de KeyPressEventArgs, tecla "Intro" y "Supr" en el foro de .NET en Foros del Web. Estoy intentando capturar un evento cuando se presiona la tecla "Intro" y la tecla "Supr". Para ello si tengo una variable "e" como un KeyPressEventArgs ...
  #1 (permalink)  
Antiguo 02/06/2008, 14:20
 
Fecha de Ingreso: marzo-2008
Mensajes: 15
Antigüedad: 16 años, 2 meses
Puntos: 1
KeyPressEventArgs, tecla "Intro" y "Supr"

Estoy intentando capturar un evento cuando se presiona la tecla "Intro" y la tecla "Supr". Para ello si tengo una variable "e" como un KeyPressEventArgs utilizo la propiedad e.KeyChar para averiguar la tecla que se ha presionado.

Para la tecla "Intro" he comparado e.KeyChar con '\n' pero no me funciona. No sé con que habrá que compararlo.
He probado a mostrar un mensaje mostrando la tecla presionada y cuando le doy al "Intro" sale un salto de línea. En cuanto a la tecla "Supr" no aparece ningun mensaje.

A ver si me podeis decir como manejar esos 2 eventos.

Gracias
  #2 (permalink)  
Antiguo 02/06/2008, 16:19
Avatar de erick_arcini  
Fecha de Ingreso: julio-2005
Ubicación: Jaltenco / DF
Mensajes: 1.723
Antigüedad: 18 años, 10 meses
Puntos: 50
Respuesta: KeyPressEventArgs, tecla "Intro" y "Supr"

Hola ivanito cuando comparas tu tecla intro no se compara con el salto de linea '\n' sino con el retorno de carro '\r' o 13 en código ASCII, una comparación más certera en tu evento keypress, que supongo es donde lo tienes sería lo siguiente:

Código:
if(e.keychar == (char)13)
Messagebox.show("Hola presionaste ENTER");

Para el caso de la tecla SUPR no se por que no lo reconoce con el evento KeyPress, para ello, te recomendaría usar el evento KeyDown que es muy semejante, en este caso utilizaría la propiedad KeyCode para obtener el código de la enumeración "Keys" y así podrías captar tanto cuando presiones la tecla ENTER o INTRO y la tecla SUPR o DELETE
__________________
Mejoremos nuestro país, ayudemos al planeta... próximamente.
Atención: Estás leyendo un tema que no tiene actividad desde hace más de 6 MESES, te recomendamos abrir un Nuevo tema en lugar de responder al actual.
Respuesta




La zona horaria es GMT -6. Ahora son las 16:13.