01. april 2007 - 09:41Der er
4 kommentarer og 1 løsning
læggesammen af 11 edit boxe
Hej eksperter....
Jeg er i gang med at lave et lille program hvor man kan taste ind hvad man har af forskellige mønter. så regner den selv sammen hvor mange kroner det er.
men nu har jeg bare et problem... jeg har 11 edit boxe hvor resultatet i kroner står i. de 11 boxe skal lægges sammen i en 12 editbox. og den skal kunne tage komma tal. men den vil bare ikke efter den måde jeg selv prøvet på...
her er min egen kode for at den lægger det hele sammen....
Jeg ville gøre det sådan: Giv alle dine Edit´s som indeholder tal der skal lægges sammen en Tag=50
var i : integer; Total : Currency; begin Total:=0; for i:=0 to Self.ComponentCount-1 do if (Self.Components[i] is TEdit) and (Self.Components[i].Tag=50) then Total:=Total+StrToFloatDef((Self.Components[i] as TEdit).Text,0);
EditT.Text:=FloatToStr(Total); end;
EditT er navnet på den edit box der indeholder resultatet.
Du bør også bruge TFormatSettings. Lav en variabel af recorden TFormatSettings, sæt DecimalSeparator til hvad der skal separere hel- og decimaldelen og læg den ved StrToFloatDef-kaldet.
... og så ellers lave det på denne måde:
procedure btnSUMClick(Sender : TObject) begin
function SumSummarum(aEdits : array of TEdit) : double; var i : integer; FormatSettings : TFormatSettings; begin result := 0.0; FormatSettings.DecimalSeparator := '.'; // Eller komma for i := low(aEdits) to high(aEdits) do result := result + StrToFloatDef(aEdits[i].Text,0.0,FormatSettings); end;
begin Edit23.Text := FloatToStr(SumSummarum([Edit2,Edit4,Edit6,Edit8, ... Edit22 ])); end;
Har du nogensinde uddelt point (til andre end dig selv) for besvarelser af nogle af dine 86 oprettede spørgsmål ?
med undren ...
Synes godt om
Ny brugerNybegynder
Din løsning...
Tilladte BB-code-tags: [b]fed[/b] [i]kursiv[/i] [u]understreget[/u] Web- og emailadresser omdannes automatisk til links. Der sættes "nofollow" på alle links.