Club Delphi  
    Paypal   FTP   CCD     Buscar   Trucos   Trabajo   Foros

Retroceder   Foros Club Delphi > Principal > OOP
Registrarse FAQ Miembros Calendario Guía de estilo Buscar Temas de Hoy Marcar Foros Como Leídos

Coloboración Paypal con ClubDelphi

Respuesta
 
Herramientas Buscar en Tema Desplegado
  #1  
Antiguo 05-06-2008
fidel fidel is offline
Miembro
 
Registrado: mar 2005
Posts: 381
Poder: 22
fidel Va por buen camino
No pongas ninguna máscara y pon esto en el el evento OnKeyPress

Código Delphi [-]
  //controlar entrada solo números
  if ( StrScan('0123456789.'+chr(7)+chr(8), Key) = nil ) then  Key := #0;
  //controlar entrada una sola coma
  for i := 1 to length(EDos.Text) do
    if ( copy(EDos.Text,i,1) = '.' ) and not ( StrScan('.', Key) = nil ) then  Key := #0;
Responder Con Cita
  #2  
Antiguo 05-06-2008
Avatar de BlueSteel
[BlueSteel] BlueSteel is offline
Miembro Premium
 
Registrado: may 2003
Ubicación: Concepción - Chile
Posts: 2.310
Poder: 26
BlueSteel Va por buen camino
Cool

Cita:
Empezado por fidel Ver Mensaje
No pongas ninguna máscara y pon esto en el el evento OnKeyPress


Código Delphi [-]
//controlar entrada solo números
if ( StrScan('0123456789.'+chr(7)+chr(8), Key) = nil ) then Key := #0;
//controlar entrada una sola coma
for i := 1 to length(EDos.Text) do
if ( copy(EDos.Text,i,1) = '.' ) and not ( StrScan('.', Key) = nil ) then Key := #0;



bueno el codigo.. pero si lo tienes que agregar a varios edits igual es más trabajo... como dicen... para que vas a inventar la rueda y esta ya fue inventda..

creo que el JvValidateEdit que menciona Contraveneno es la mejor opción..

Salu2
__________________
BlueSteel
Responder Con Cita
  #3  
Antiguo 06-06-2008
fidel fidel is offline
Miembro
 
Registrado: mar 2005
Posts: 381
Poder: 22
fidel Va por buen camino
Estoy de acuerde en que es una tontería reinventar la rueda, pero la última línea de la consulta pone: Gracias y por favor no me digan que use otro control..., supongo que sus razones tendrá
Responder Con Cita
  #4  
Antiguo 06-06-2008
Avatar de ContraVeneno
ContraVeneno ContraVeneno is offline
Miembro
 
Registrado: may 2005
Ubicación: Torreón, México
Posts: 4.740
Poder: 26
ContraVeneno Va por buen camino
a que caray... tienes razón, como que la edad ya me está afectando y no había visto esa línea de "no usar otro control"

__________________

Responder Con Cita
  #5  
Antiguo 10-06-2008
luigi_cr luigi_cr is offline
Miembro
 
Registrado: jul 2007
Ubicación: Costa Rica
Posts: 39
Poder: 0
luigi_cr Va por buen camino
Thumbs up

Código Delphi [-]
procedure txtKeyPress(
  Sender: TObject; var Key: Char);
var s, t: String;
  i: integer;
begin
  if key='.' then
    with TMaskEdit(Sender) do
      begin
        t:= Trim(stripped('.', Text));
        //s:= EditMask;
        //Delete(S, Length(s)-3, 4);
        s:= '9';
        for i := 0 to Length(Trim(stripped(' ', t))) - 2 do
        begin
          s:= s + '9';
          EditMask:= S+'\.9999;1; ';
        end;
        Text:= stripped(' ', t);
        SelStart:= Length(Trim(Text))-4;
      end;

  if key = #8 then
    with TMaskEdit(Sender) do
    begin
      t := Trim (Text);
      EditMask := '9999999999;1; ';
      Text := stripped(' ', t);
      SelStart:= Length(Trim(Text));
    end;

end;

Al final lo deje algo asi.

El stripped es una función que elimina un determinado caracter en una cadena, en este caso el espacio en blanco.

el
Código Delphi [-]
if key = #8 then
es para cuando se presiona backspace.

el codigo de la función stripped es el siguiente:
Código Delphi [-]
function stripped(stripchar: char; str: string): string;
var
  tmpstr : string;
begin
  tmpstr := str;
  while pos(stripchar, tmpstr) > 0 do
    delete(tmpstr, pos(stripchar, tmpstr), 1);
  stripped := tmpstr;
end;

Lo tome de aca: http://www.q3.nu/trucomania/ftesp.html

Gracias por las respuestas.
Responder Con Cita
Respuesta


Herramientas Buscar en Tema
Buscar en Tema:

Búsqueda Avanzada
Desplegado

Normas de Publicación
no Puedes crear nuevos temas
no Puedes responder a temas
no Puedes adjuntar archivos
no Puedes editar tus mensajes

El código vB está habilitado
Las caritas están habilitado
Código [IMG] está habilitado
Código HTML está deshabilitado
Saltar a Foro

Temas Similares
Tema Autor Foro Respuestas Último mensaje
Cargar puntos en una DB juanchi Conexión con bases de datos 8 06-03-2007 18:06:56
Dll y puntos de entrada chete Varios 1 11-01-2006 13:20:28
comas por puntos pruz API de Windows 4 05-07-2005 22:59:24
Puntos Carlex Varios 2 23-09-2004 14:44:09
Codigos de Puntos Roberto Impresión 1 04-06-2003 22:12:54


La franja horaria es GMT +2. Ahora son las 07:44:55.


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
Copyright 1996-2007 Club Delphi