Club Delphi  
    FTP   CCD     Buscar   Trucos   Trabajo   Foros

Retroceder   Foros Club Delphi > Principal > Varios
Registrarse FAQ Miembros Calendario Guía de estilo Temas de Hoy

Grupo de Teaming del ClubDelphi

Respuesta
 
Herramientas Buscar en Tema Desplegado
  #1  
Antiguo 11-05-2017
Avatar de Soa Pelaez
Soa Pelaez Soa Pelaez is offline
Miembro
 
Registrado: nov 2015
Posts: 133
Poder: 9
Soa Pelaez Va por buen camino
Cita:
Empezado por olbeup Ver Mensaje
El problema que tú tienes, es, en el procedimiento, tienes que añadir "var", en vez de:
Código Delphi [-]
procedure ValidarPorcentajeKeyPressEdit(Caracter: Char;Edit:TrDBEdit);
Pon esto otro:
Código Delphi [-]
procedure ValidarPorcentajeKeyPressEdit(var Caracter: Char;Edit:TrDBEdit);
Un saludo
Muchas gracias, modifique eso a la declaración de mi procedimiento y funciono correctamente. Quedo de la siguiente manera:

Código Delphi [-]
procedure ValidarPorcentajeKeyPressEdit(var Caracter: Char;Edit:TrDBEdit; Sender:TObject);
var
  pos: Cardinal;
begin
  i:=0;
  //Permite que desepues de se digite el . o , solo se puedan ingresar 2 Registros Mas
  if ( StrScan('0123456789.,'+chr(7)+chr(8)+#13, Caracter) = nil ) then  Caracter := #0;
//  // cambia el punto decimal por coma
  if (Caracter = '.') or (Caracter = ',') then Caracter := ',';
//  //controlar entrada una sola coma
  for i := 1 to length(Edit.Text) do
    if ( copy(Edit.Text,i,1) = ',' ) and not ( StrScan(',', Caracter) = nil ) then  Caracter := #0;
    with Sender as TrDBEdit do
    if ( copy((Text), i , 1) = ',' ) and not ( StrScan(',', Caracter) = nil ) then  Caracter := #0;

  with Sender as TrDBEdit do
  begin
    pos := System.Pos(',', Text);
    if not LongBool(Pos) then Dec(Pos);
      ReadOnly := not (Caracter in ['0'..'9',#13, ',', #8]) or
        (Pos <> $FFFFFFFF) and (Caracter = ',') or
        ((Caracter <> #8) and (Caracter <> #13) and (Pos < (SelStart - 1)));
  end;
end;

//LA INVOCACIÓN DEL PROCEDIMIENTO ES ASI.
procedure TForm.DBEPorcentajeKeyPress(Sender: TObject; var Key: Char);
begin
  ValidarPorcentajeKeyPressEdit(Key,DBEPorcentaje,Sender);
end;
Responder Con Cita
  #2  
Antiguo 12-05-2017
Avatar de olbeup
olbeup olbeup is offline
Miembro
 
Registrado: jul 2005
Ubicación: Santiago de la Ribera (España)
Posts: 685
Poder: 19
olbeup Va camino a la fama
Hola Soa Pelaez,

Me alegro por ti.

Un saludo.
__________________
Al hacer una consulta SQL, haz que los demás te entiendan y disfruten de ella, será tú reflejo de tú saber.
Responder Con Cita
Respuesta



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
Uso del keypress en un edit snake25237 OOP 1 23-02-2011 15:30:43
evento keypress ronson Varios 40 04-01-2011 04:18:23
validar decimales con "coma" lucasarts_18 PHP 3 26-12-2008 01:41:50
teclas F# en keypress sargento elias OOP 3 08-10-2008 08:23:43
Llamar a evento Keypress edgusano .NET 1 30-11-2005 22:02:29


La franja horaria es GMT +2. Ahora son las 08:28:09.


Powered by vBulletin® Version 3.6.8
Copyright ©2000 - 2024, Jelsoft Enterprises Ltd.
Traducción al castellano por el equipo de moderadores del Club Delphi
Copyright 1996-2007 Club Delphi