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 10-03-2010
hernan35 hernan35 is offline
Registrado
 
Registrado: mar 2010
Posts: 9
Poder: 0
hernan35 Va por buen camino
Combobox

Hola a todos.
Espero puedan sacarme una duda seguro que sencilla.
Quiero multiplicar dos elementos seleccionados, cada uno de ellos pertenecientes a un combobox. El producto resulta cuando los valores son númeos enteros, pero si tengo un número decimal ya no funciona.¿cómo se múltiplican los elementos del combobox1 y combobox2 si uno de ellos es decimal?
Desde ya muchas gracias.
saludos
Responder Con Cita
  #2  
Antiguo 10-03-2010
Avatar de Caro
*Caro* Caro is offline
Moderadora
 
Registrado: jul 2004
Ubicación: Cochabamba, Bolivia
Posts: 2.544
Poder: 22
Caro Va por buen camino
Hola hernan35, puedes manejar el tipo Currency:

Código Delphi [-]
var
 Total : Currency;
begin
 Total := StrToCurr(ComboBox1.Items[ComboBox1.ItemIndex])*StrToCurr(ComboBox2.Items[ComboBox2.ItemIndex]);

Saluditos
__________________
Disfruten cada minuto de su vida a lado de sus seres queridos como si fuese el ultimo, uno nunca sabe lo que puede pasar.
Responder Con Cita
  #3  
Antiguo 10-03-2010
hernan35 hernan35 is offline
Registrado
 
Registrado: mar 2010
Posts: 9
Poder: 0
hernan35 Va por buen camino
Gracias caro, lo voy a probar.
Responder Con Cita
  #4  
Antiguo 10-03-2010
BrunoBsso BrunoBsso is offline
Miembro
 
Registrado: nov 2009
Ubicación: Berisso, Buenos Aires, Argentina
Posts: 239
Poder: 15
BrunoBsso Va por buen camino
Hola.
Si mal no recuerdo, StrToCurr te da los números con 2 decimales (currency, dinero, moneda). Si querés usar mas de 2 decimales usa StrToFloat que lo convierte a punto flotante (reales, double, single, extended, etc).
Saludos!
Responder Con Cita
  #5  
Antiguo 10-03-2010
Avatar de Softweb
Softweb Softweb is offline
Miembro
 
Registrado: ago 2008
Posts: 46
Poder: 0
Softweb Va por buen camino
Cita:
Empezado por BrunoBsso Ver Mensaje
Hola.
Si mal no recuerdo, StrToCurr te da los números con 2 decimales (currency, dinero, moneda). Si querés usar mas de 2 decimales usa StrToFloat que lo convierte a punto flotante (reales, double, single, extended, etc).
Saludos!
Hola

ExactamenteStrToCurr da los decimales que tenga configurado el sistema operativo y que esta definido en la variable gloval CurrencyDecimals.

Si quieres que tu aplicación trabaje con tres decimales solo tienes que poner en el inicio de tu aplicación algo como:

CurrencyDecimals := 3;

y todo los formateo de las funciones y todo los controles mostraran 3 decimales en tu aplicación.

Saludos.
Responder Con Cita
  #6  
Antiguo 11-03-2010
BrunoBsso BrunoBsso is offline
Miembro
 
Registrado: nov 2009
Ubicación: Berisso, Buenos Aires, Argentina
Posts: 239
Poder: 15
BrunoBsso Va por buen camino
Thumbs up

Cita:
Empezado por Softweb Ver Mensaje
Hola

ExactamenteStrToCurr da los decimales que tenga configurado el sistema operativo y que esta definido en la variable gloval CurrencyDecimals.

Si quieres que tu aplicación trabaje con tres decimales solo tienes que poner en el inicio de tu aplicación algo como:

CurrencyDecimals := 3;

y todo los formateo de las funciones y todo los controles mostraran 3 decimales en tu aplicación.

Saludos.
Si lo hubiese sabido antes... la cantidad de código que me hubiese ahorrado

Pero bueno, tarde o temprano se aprende. Ya me solucionaste unas 5~10 líneas de código cada vez que necesite algo de este estilo.
Gracias!!!!!
Saludos!
Responder Con Cita
  #7  
Antiguo 10-03-2010
hernan35 hernan35 is offline
Registrado
 
Registrado: mar 2010
Posts: 9
Poder: 0
hernan35 Va por buen camino
Cita:
Empezado por Caro Ver Mensaje
Hola hernan35, puedes manejar el tipo Currency:


Código Delphi [-]
var
Total : Currency;
begin
Total := StrToCurr(ComboBox1.Items[ComboBox1.ItemIndex])*StrToCurr(ComboBox2.Items[ComboBox2.ItemIndex]);





Saluditos



Hola nuevamente caro

Tu sintáxis es correcta pero se me presenta otro problema y es cuando quiero mostrar el resultado.

Edit1.text:=CurrToStr(Total);

¿esto es correcto?

gracias nuevamente y perdon por la molestia ocasionada.
Responder Con Cita
  #8  
Antiguo 10-03-2010
Avatar de Caro
*Caro* Caro is offline
Moderadora
 
Registrado: jul 2004
Ubicación: Cochabamba, Bolivia
Posts: 2.544
Poder: 22
Caro Va por buen camino
Cita:
Empezado por hernan35 Ver Mensaje
Hola nuevamente caro

Tu sintáxis es correcta pero se me presenta otro problema y es cuando quiero mostrar el resultado.

Edit1.text:=CurrToStr(Total);

¿esto es correcto?
Claro es correcto, estas convirtiendo de currency a String para mostrar en el Edit y no es ninguna molestía, pregunta todas las dudas que tengas .

Saluditos
__________________
Disfruten cada minuto de su vida a lado de sus seres queridos como si fuese el ultimo, uno nunca sabe lo que puede pasar.
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
Genero comboBox en dbgrid y cuando hago dos veces click desaparece el comboBox. mcalmanovici Varios 1 29-02-2012 15:09:15
se usa un combobox?? calistian Varios 9 02-07-2008 19:19:56
combobox lis983 Varios 2 06-06-2008 16:52:00
como mostrar la ventana de lenar inten de un combobox en tiempo de un combobox gulder Varios 3 19-05-2007 19:55:58
Combobox personilla Varios 2 05-03-2007 10:14:32


La franja horaria es GMT +2. Ahora son las 22:09:37.


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