![]() |
MaskEdit
hola a tod@s!!
Tengo un componente de tipo TcxMaskEdit con esta máscara: (\d){1,5} para que escriban número enteros hasta 5 cifras. Si intento escribir letras no me deja, pero si copio un texto, de word por ejemplo, me sale el siguiente error: Access violiation at adress 0050CC 08 in module 'Aplicación.exe' read of adress 00000000. ¿¿Alguien sabe como hacer para evitar el pegado de texto en el componente o controlar que lo que se pega sea válido?? Un Saludo. |
Poniendo este código en el evento 'OnKeyPress' del MaskEdit:
Código:
if not (key in ['0'..'9',chr(8)]) then abort;Lo único que no se como impedir es que te salga el menu del botón derecho del ratón. Espero que te ayude un poquillo, aunque no te soluciono completamente el problema. |
Muchas gracias!!
Ya está resuelto.... para evitar el menu contextual del botón derecho del ratón le he puesto en el evento onContextPopup abort; Y solucionado!! Muchas Gracias weke :) |
por si no contabas con las teclas de atajos
GG, tal vez no pensantes en el Ctrl + P, porque probe lo del menu contextual y fue excelente, pero tambien abria que cancelar las teclas de atajo, prueba este codigo
OnKeyPress begin if (HiWord(GetKeyState(VK_CONTROL))<> 0 ) and (key = #22) Then key:=#0; end; |
con el codigo de weke:
if not (key in ['0'..'9',chr(8)]) then abort; se deshabilita cualkier tecla q no sea numérica, "control" incluido. que me corrija weke si me ekivoco...:) |
No te equivocas scooterjgm, de hecho fue lo primero que probé porque no estaba seguro si el código me dejaría hacer CTRL+C, y no te lo permite.
|
| La franja horaria es GMT +2. Ahora son las 21:27:56. |
Powered by vBulletin® Version 3.6.8
Copyright ©2000 - 2026, Jelsoft Enterprises Ltd.
Traducción al castellano por el equipo de moderadores del Club Delphi