SoloCodigo
Programación General => C/C++ => C++ Builder => Mensaje iniciado por: gemma en Martes 26 de Julio de 2005, 14:49
-
Hola, mi problema es el siguiente, quiero saber cuando pulso una tecla en la funcion keypress, saber que posicion es, si el la 1º o segunda, ectt .. gracias anticipadas
-
:( Formula la pregunta de otra manera, por si no me he explicado bien:
Tengo Edit, y quiero controlar cuando presiono alguna tecla, en el evento keypress, que posicion de tecla es en el edit, para poder poner un formato
de hora, osea si es la posicion 1 que no pueda ser superio al nº 2, si es la posicion
3 que solo pueda ser ':', lo que no se como se puede saber la posicion. Porque he probado con un MaskEdit y funciona, pero cuando pones mal la hora, da error, gracias
-
La posicion del cursor la puedes obtener con
nPos = Edit1->SelStart;
Ten en cuenta que la posicion es antes de tratar la pulsacion es decir la primera vez obtendras un 0.
Quizas te sea mas comodo programar el evento OnKeyUp
-
Gracias he probado y me funciona, pero quisiera saber que difencia hay entre el
evento keypress y onkeyup.
-
A 'grosso' modo, en el keypress recibes el caracter ascii pulsado y lo puedes manipular, es decir si no esta en el rango que quieres lo pudes anular (key =0) o cambiar por otro.
En este evento no aparecen las teclas de funcion ni las de edición como insert, supr... estas teclas solo las puedes detectar con los eventos keydown o keyup.
Cuando me referia al keyup es porque la posicion del cursor la consultas despues de procesar la tecla pulsada.
Saludos
Juanma
-
muchas gracias por tu respuesta