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 03-04-2013
sac sac is offline
Miembro
 
Registrado: abr 2007
Posts: 109
Poder: 18
sac Va por buen camino
para control de dinero

Hola amigos. Necesito hacer algo que en principio me parecio fácil.
Necesito un edit por cada billete y moneda que usamos (desde el billete de $100 hasta la moneda de $0,05)
En esos edit se tipea un entero que es la cantidad de ese tipo de billete o moneda.
Necesito que en otro edit o mask edit, automaticamente, cuando se tipee haga la multiplicación del tipo de billete/moneda por la respectiva cantidad y en un totalizador la suma de todos los resultados. Ahí empieza mi problema por usar float, real etc. Me podrían ayudar?
Responder Con Cita
  #2  
Antiguo 03-04-2013
Avatar de newtron
[newtron] newtron is offline
Membrillo Premium
 
Registrado: abr 2007
Ubicación: Motril, Granada
Posts: 3.462
Poder: 21
newtron Va camino a la fama
Hola.

En principio no deberías de tener mucha complicación con eso. Yo pondría un edit para cada tipo de moneda en el que solo puedas introducir enteros y en el evento OnChange enviarlo a una función que haga los cálculos y te los ponga en Labels.

Saludos
__________________
Be water my friend.
Responder Con Cita
  #3  
Antiguo 03-04-2013
luisgutierrezb luisgutierrezb is offline
Miembro
 
Registrado: oct 2005
Ubicación: México
Posts: 925
Poder: 19
luisgutierrezb Va por buen camino
podrias utilizar el tipo "currency", nunca eh tenido problemas con el, ademas se supone que es precisamente para manejo monetario...
Responder Con Cita
  #4  
Antiguo 03-04-2013
sac sac is offline
Miembro
 
Registrado: abr 2007
Posts: 109
Poder: 18
sac Va por buen camino
Como?

Algun ejemplo?
Responder Con Cita
  #5  
Antiguo 03-04-2013
Avatar de ecfisa
ecfisa ecfisa is offline
Moderador
 
Registrado: dic 2005
Ubicación: Tres Arroyos, Argentina
Posts: 10.508
Poder: 36
ecfisa is a splendid one to beholdecfisa is a splendid one to beholdecfisa is a splendid one to beholdecfisa is a splendid one to beholdecfisa is a splendid one to beholdecfisa is a splendid one to beholdecfisa is a splendid one to behold
Hola sac.

Para el ejemplo: Agregá diez TEdit, de nombres "Edit1",..., "Edit10" para ingresar la cantidad de unidades, y diez TLabel de nombres "Label1",..., "Label10" para mostrar el resultado del producto de la cantidad por la moneda.

Luego:
Código Delphi [-]
...
const
   MONEDA: array[1..10] of Currency = (0.05, 0.10, 0.25, 0.50, 1, 2, 5, 10, 50, 100);

procedure TForm1.FormCreate(Sender: TObject);
var
  i: Integer;
begin
  for i:= 1 to 10 do
    with TEdit(FindComponent('Edit'+IntToStr(i))) do
    begin
      Text       := '';
      OnChange   := EditChange;
      OnKeyPress := EditKeyPress;
      Tag        := i;
    end;
end;

procedure TForm1.EditKeyPress(Sender: TObject; var Key: Char);
begin
  if not (key in[#8,'0'..'9']) then
  begin
    Key := #0;
    MessageBeep(MB_ICONERROR)
  end;
end;

procedure TForm1.EditChange(Sender: TObject);
var
  c: Integer;
begin
  if TryStrToInt(TEdit(Sender).Text, c) then
    TLabel(FindComponent('Label'+IntToStr(TEdit(Sender).Tag))).Caption:=
       CurrToStr(c * MONEDA[TEdit(Sender).Tag])
end;
...
Agrega otros diez Labels sobre los Edits para saber que valor de moneda están ingresando.

Saludos.
__________________
Daniel Didriksen

Guía de estilo - Uso de las etiquetas - La otra guía de estilo ....
Responder Con Cita
  #6  
Antiguo 04-04-2013
Avatar de Neftali [Germán.Estévez]
Neftali [Germán.Estévez] Neftali [Germán.Estévez] is offline
[becario]
 
Registrado: jul 2004
Ubicación: Barcelona - España
Posts: 18.275
Poder: 10
Neftali [Germán.Estévez] Es un diamante en brutoNeftali [Germán.Estévez] Es un diamante en brutoNeftali [Germán.Estévez] Es un diamante en bruto
Cita:
Empezado por sac Ver Mensaje
Ahí empieza mi problema por usar float, real etc. Me podrían ayudar?
Bueno, hacer la suma y la multiplicación supongo que debes saber, así que supongo que el mayor problema que se te debe presentar al realizarlo en Delphi son los tipos de Datos. Una vez que los tengas claros, las operaciones también deberían serte fáciles de implementar.

Lo que tienes en un Edit (edit1.Text) es de tipo string, los números que necesitas para sumar o multiplicar serán enteros, float,... (dependiendo de si tienen decimales o no). lo que te queda para conseguir las operaciones es convertir entre tipos. Para eso Delphi posee funciones (que puedes buscar en la ayuda) como: StrToInt, IntToStr, StrToFloat, FloatToStr,...

En los links que te he puesto (y si buscas más en esa página) encontrarás cómo utilizarlas.
__________________
Germán Estévez => Web/Blog
Guía de estilo, Guía alternativa
Utiliza TAG's en tus mensajes.
Contactar con el Clubdelphi

P.D: Más tiempo dedicado a la pregunta=Mejores respuestas.
Responder Con Cita
  #7  
Antiguo 09-04-2013
sac sac is offline
Miembro
 
Registrado: abr 2007
Posts: 109
Poder: 18
sac Va por buen camino
Gracias

Todavia no puedo decirles que funciona todo al 100 x 100 pero estoy trabajando en eso La ayuda fue muy valiosa Gracias.
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
API para control de USB Val API de Windows 0 04-08-2008 10:08:19
El ex portavoz de Jueces para la Democracia, asociación que recibía dinero de la SGAE ArdiIIa La Taberna 2 06-04-2007 23:01:54
AI detecta webs que captan víctimas para blanquear dinero marcoszorrilla Noticias 1 06-11-2005 22:49:23
Componente para Control de usuarios El_Chava Noticias 3 07-09-2005 14:45:52


La franja horaria es GMT +2. Ahora son las 12:20:53.


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