![]() |
Listbox Items weiterverarbeiten
Also hallo erstmal
ich hab dieses Schuljahr mit Delphi angefangen hatte aber schon n paar vorkenntnisse^^ so zu meinen Problem Es geht um die Brechnung eines Mittelwertes mit Zahlen (Strings) die in einer listbox stehen bisher bin ich so weit gekommen dass nur zahlen in die listbox eingetragen werden können (is allerdings nicht die feine art) nun möchte ich wenn ich alle werte eingetragen habe und den button zur brechnung des MW drücke dass er alle items aus der liste in real Werte umwandelt und ich damit den mittelwert berechnen kann
Delphi-Quellcode:
Und dann würde mich interessieren wie man TryStrTo... einsetzt - klappt bei mir nicht wegen Überladener Version ^^procedure TForm1.Button1Click(Sender: TObject); //Einfügen einer Zahl in die Listbox über StrToFloat - FloatToStr var c:String; b:Integer; a:real ; begin b:=StrToInt(Edit2.Text); a:=StrToFloat(Edit1.Text); c:=FloatToStr(a); Listbox1.Items.Add(c); b:=b+1; Edit2.Text:= IntToStr(b); end; procedure TForm1.Button2Click(Sender: TObject); //Löschen eines ausgewählten Items begin Listbox1.DeleteSelected; end; procedure TForm1.Button3Click(Sender: TObject); //Schleife zum Löschen der kompletten Liste (evt. gehts auch einfacher) var a,b:Integer; begin a:=0; b:=StrToInt(Edit2.Text); Repeat begin Listbox1.Items.Delete(0); b:=b-1; Edit2.Text:=IntToStr(b); end; Until b=0; end; procedure TForm1.Button4Click(Sender: TObject); //Stelle an der der Mittelwert aus den Items der Listbox berechnet werden soll begin end; ich liebe diese super zu interpretierenden Fehler (soll heißen kann damit nix anfangen) Danke schon ma im Vorraus :coder2: The_Doomed |
Re: Listbox Items weiterverarbeiten
Delphi-Quellcode:
if not TryStrToInt(Edit2.Text, b) then //Kein Integer
|
Re: Listbox Items weiterverarbeiten
achso hätt ich dazusagen sollen
das b und edit 2 is ne Zahl in nem Edit feld welche nur die anzahl der Einträge anzeigt die sich in der box befinden um diese dann mit der schleife zu löschen hat also mit dem problem ni wirklich was zu tun ^^ |
Re: Listbox Items weiterverarbeiten
Mit einer For-Schleife:
Delphi-Quellcode:
kannst du alle Items durchgehen, in einen entsprechenden Datentyp konvertieren und damit weiterrechnen.
for i := 0 to ListBox.Items.Count - 1 do
|
Re: Listbox Items weiterverarbeiten
das hab ich auch schon anderswo gelesen aber ich habs ni verstanden wäre cool wenn man dass ma n bisschen ausführlicher erklären würde ich mach das noch ni so lange :angel2:
|
Re: Listbox Items weiterverarbeiten
ListBox.Items.Count enthält die Anzahl der Einträge der Liste, da der Index bei 0 beginnt muss man dann 1 abziehen.
|
Re: Listbox Items weiterverarbeiten
Delphi-Quellcode:
Getippt und nicht getestet.
procedure TForm1.Button1Click(Sender: TObject);
//Einfügen einer Zahl in die Listbox über StrToFloat - FloatToStr var c:String; b:Integer; a:real ; begin b:=StrToInt(Edit2.Text); a:=StrToFloat(Edit1.Text); c:=FloatToStr(a); Listbox1.Items.Add(c); b:=b+1; Edit2.Text:= IntToStr(b); end; procedure TForm1.Button2Click(Sender: TObject); //Löschen eines ausgewählten Items begin Listbox1.DeleteSelected; end; procedure TForm1.Button3Click(Sender: TObject); //Schleife zum Löschen der kompletten Liste (evt. gehts auch einfacher) begin ListBox1.Items.Clear; end; procedure TForm1.Button4Click(Sender: TObject); //Stelle an der der Mittelwert aus den Items der Listbox berechnet werden soll var i: integer; Summe, Mittel: double; begin Summe := 0; Mittel := 0; for i := 0 to ListBox1.Items.Count - 1 do Summe := Summe + StrToFloat(ListBox1.Items[i]); if ListBox1.Items.Count > 0 then Mittel := Summe / ListBox1.Items.Count; end; |
Re: Listbox Items weiterverarbeiten
und wie lass ich das mittel ausgeben ??
muss ich ja wieder in nen string konvertieren oder ? |
Re: Listbox Items weiterverarbeiten
Zitat:
|
Re: Listbox Items weiterverarbeiten
und das bedeutet
|
Alle Zeitangaben in WEZ +1. Es ist jetzt 12:10 Uhr. |
Powered by vBulletin® Copyright ©2000 - 2025, Jelsoft Enterprises Ltd.
LinkBacks Enabled by vBSEO © 2011, Crawlability, Inc.
Delphi-PRAXiS (c) 2002 - 2023 by Daniel R. Wolf, 2024 by Thomas Breitkreuz