![]() |
Listbox Elemente Addieren und im Label ausgeben?
Hallo
Ich brauche ein wenig Hilfe von euch bei einem Programmteil. Und zwar schreibe ich grad ein Programm, bei dem nun das Problem auftrat Elemente aus einer Listbox zusammenzuzählen. d.h. Es läuft so: 1.Zahl wird per Edit1.text in Listbox hinzugefügt - Fertig 2.Alle Zahlen aus der Listbox sollen addiert werden und in einem Label als Summe ausgegeben werden. -> Wie geht das? Könnte vllt. jemand beschreiben wie man das macht oder vllt. ein Quellcode dazuschreiben mit beliebigen Variablen? Wäre echt nett wenn jemand helfen könnte. Danke |
Re: Listbox Elemente Addieren und im Label ausgeben?
Willkommen in der DP :)
Eventuell solltest du dir den ![]()
Delphi-Quellcode:
Frei geschrieben und nicht getestet. summe musst du noch als Integer deklarieren.
for i:= 0 to ListBox.Items.Count -1 do
summe := strtoint(ListBox.Items[i]) + summe; Label.Caption := inttostr(summe); Logisch gesehen ganz einfach. Alle Elemente in der ListBox sind Strings, daher musst du diese zum addierne erstmal in Integer konvertieren. Dies machst du gleich beim Additionsaufruf, wobei du dich aber verlassen musst, das wirklich nur integer Werte als Strings in der ListBox eingetragen sind ;) Danach lässt du eine Schleife durchlaufen, welche so oft, wie Einträge in der ListBox vorhanden sind, diese Zeilenweise durchläuft und alle Werte nach und nach addiert. Zu allerletzt werden die addierten Werde dann in das Label eingetragen. Grüße |
Re: Listbox Elemente Addieren und im Label ausgeben?
vielen dank das funktioniert super.
Wenn ich jetz aber die Summe durch 100 rechnen will, sagt der immer Integer und Extended geht nicht. Wie muss man denn die 100 schreiben? ich hatte das so:
Delphi-Quellcode:
Kann die Gesamtzahl dann noch gespalten werden in 2 Teile? Euro und Cent meinetwegen? Geht sowas?
gesamt:=summe/100;
|
Re: Listbox Elemente Addieren und im Label ausgeben?
Delphi-Quellcode:
EineFloatVariable := summe/100
|
Re: Listbox Elemente Addieren und im Label ausgeben?
Wie DeddyH schon geschrieben hat:
Bei dem Operator "/" muss die Variable, dem der Wert zugewiesen wird, ein Floatwert sein. Es gibt noch 2 weitere Arten zu "teilen", nämlich "div" und "mod", bei beiden kann die Variable auch ein integer sein. Allerdings sind diese Operatoren nicht das selbe wie "/" "10 div 6" ergibt z.B. "1", da 6 einmal in die 10 "reinpasst" "10 mod 6" ergibt "4", also den "rest" der zur 10 übrig bleibt |
Alle Zeitangaben in WEZ +1. Es ist jetzt 12:23 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-2025 by Thomas Breitkreuz