Tema: Calculadora
Ver Mensaje Individual
  #5  
Antiguo 14-05-2007
Avatar de Delphius
[Delphius] Delphius is offline
Miembro Premium
 
Registrado: jul 2004
Ubicación: Salta, Argentina
Posts: 5.582
Reputación: 25
Delphius Va camino a la fama
sebaguillen, de lo que estuve viendo, el error se debe a el punto:

Código Delphi [-]
procedure TForm1.BPuntoClick(Sender: TObject);
begin
    if Edicion.Text = '' then
      Edicion.Text:= '0.'
    else
      Edicion.Text:= Edicion.Text + '.';

Lo cambié por coma y listo:

Código Delphi [-]
procedure TForm1.BPuntoClick(Sender: TObject);
begin
    if Edicion.Text = '' then
      Edicion.Text:= '0,'
    else
      Edicion.Text:= Edicion.Text + ',';

Esto se debe a la configuración regional. No me acuerdo cual es la función que permite cambiar esta configuración... se que se ha hablado en los foros sobre esta función (o API).... la verdad no me la acuerdo...

Ahora, te aconsejaría que el código en el botón igual lo mejores. Creo que sería mejor esto:

Código Delphi [-]
case f of:
1: sentencias....
2: sentencias....
3: sentencias....
else 
end;

También se puede reutilizar los eventos Click de los botones. Empleando la proiedad tag:

Código Delphi [-]
procedure TForm1.B1Click(Sender: TObject);
begin
  Edicion.Text := IntToStr((Sender as TButton).Tag);
end;

De modo que pones en el tag el número (para el B1 es 1, etc). Y haces que todos los botones compartan el mismo evento.

Espero que se entienda.
Si tienes mayores dudas avisa.

Saludos,
__________________
Delphius
[Guia de estilo][Buscar]
Responder Con Cita