Tema: Codigo ascii
Ver Mensaje Individual
  #3  
Antiguo 26-04-2005
rafita rafita is offline
Miembro
 
Registrado: ago 2003
Ubicación: Cuenca- España.
Posts: 309
Reputación: 21
rafita Va por buen camino
Hola Luli,

quizá fuese suficiente con controlar el evento OnKeyPress del Edit o MaskEdit, limitando los caracteres que permites:

Código:
procedure SoloNumeros(Sender: TObject; var Key: Char);
begin
  if not (key in ['0'..'9',#8]) then key:=#0;  // sólo admito número y la tecla de retroceso
end;
// if not (key in ['a'..'f','1'..'5',#8]) --> solo letras de la "a" a la "f" y números del "1" al "5".

Si deseas más restricciones, como obligar a que el primer caracter sea una letra, puedes utilizar las mascaras del MaskEdit, validarlo al salir del control, o cambiar los caracteres que admites según los que ya tengas:

Código:
procedure Form1.Edit1OnkeyPress(Sender: TObject; var Key: Char);
begin
   if Length(Edit1.Text)<2 then
	  if not (key in ['a'..'e','j'..'m',#8]) then key:=#0	  
   else
	  if not (key in ['0'..'9',#8]) then key:=#0;
end;
// los dos primeros caracteres deben ser una de estas letras: a, b, c, d, e, j, k, l, m
// el resto serán sólo numeros
Saludos
__________________
Rafita.
Responder Con Cita