![]() |
case Wertausgabe Endbetrag
Ich habe ein Problem in meiner Programmierung. UNd zwar weiß ich nicht wie ich jetzt den bruttowert ausgeben soll!
Am besten ebe ich euch den Quellcode.
Delphi-Quellcode:
So!! Wo steckt der fehler?
procedure TForm2.RadioGroup1Click(Sender: TObject);
var bruttowert, nettowert, p: integer; begin nettowert := strtoint (edit2.text); case RadioGroup1.ItemIndex of 0: bruttowert := nettowert * 1; 1: bruttowert := nettowert * (7/100) + nettowert ; 2: bruttowert := nettowert + (19/100) + nettowert ; else p := strtoint (edit1.Text); 3: bruttowert := nettowert * (p/100) + nettowert ; end; panel1.Text := inttostr (bruttowert end; end; [edit=Matze][delphi]-Tags gesetzt. MfG, Matze[/edit] |
Re: case Wertausgabe Endbetrag
Hallo,
die case-Anweisung sieht so aus:
Delphi-Quellcode:
Es werden die Werte im oberen Abschnitt überprüft und falls <var> einen anderen Wert hat, wird der else-Abschnitt ausgeführt. In diesem kannst du nicht mehr - wie du es machst - auf den Wert zugreifen. Das ginge dort beispielsweise mit einer if-Abfrage.
case <var> of
0: ...; 1: ...; 2: ...; else ... end; Edit: Setze zukünftig bitte die [delphi]-Tags um deinen Delphi-Code. |
Re: case Wertausgabe Endbetrag
Zitat:
ich glaube so sollte es sein, nicht getestet:
Delphi-Quellcode:
procedure TForm2.RadioGroup1Click(Sender: TObject);
var bruttowert, nettowert, p: integer; begin nettowert := strtoint (edit2.text); case RadioGroup1.ItemIndex of 0: bruttowert := nettowert; 1: bruttowert := nettowert * (7 div 100) + nettowert ; 2: bruttowert := nettowert + (19 div 100) + nettowert ; // elsewas willst du hier mit nem else?? das ist nur auf eine if clausel anwendbar in delphi.. // p := strtoint (edit1.Text); 3: bruttowert := nettowert * (p div 100) + nettowert ; end; panel1.caption := inttostr (bruttowert); end; end; |
Re: case Wertausgabe Endbetrag
Das ist nicht mein PRoblem! Ich muss doch eigentlich das else weglassen, weil ich ja eine Radiogroub verwende und muss daher die Radiobox'3' in das case einsetzen nur ich möchte den wert in dem edit-Feld ja in die Rechnung einbringen und da ist auch das problem, dass ich habe.
Das zweite PRoblem ist, wie bekomme ich das ergebniss der einzelen Rechnungen auf dem Panel angezeigt??? |
Re: case Wertausgabe Endbetrag
Zitat:
|
Re: case Wertausgabe Endbetrag
OK dankeschön. Mein Problem hat sich doch gerade aufgelöst
|
Re: case Wertausgabe Endbetrag
Zitat:
|
Re: case Wertausgabe Endbetrag
Zitat:
ja ich hab das ganze schon veränder, ja das p muss natürlich drin bleiben und den text des panels setzt du mit caption, ich hab das ganze geändert:
Delphi-Quellcode:
procedure TForm2.RadioGroup1Click(Sender: TObject);
var bruttowert, nettowert, p: integer; begin p := strtoint (edit1.Text); <--- hier den p wert auslesen aus dem edit nettowert := strtoint (edit2.text); case RadioGroup1.ItemIndex of 0: bruttowert := nettowert; 1: bruttowert := nettowert * (7 div 100) + nettowert ; <-- anstelle von \ lieber ein div verwenden 2: bruttowert := nettowert + (19 div 100) + nettowert ; // elsewas willst du hier mit nem else?? das ist nur auf eine if clausel anwendbar in delphi.. 3: bruttowert := nettowert * (p div 100) + nettowert ; end; panel1.caption := inttostr (bruttowert); <-- hier das panel den text zuordnen mit caption end; end; |
Re: case Wertausgabe Endbetrag
Er soll auch die Warnungen/Hinweise nicht einfach ignorieren. Bruttowert ist anfangs nicht mal initialisiert.
|
Re: case Wertausgabe Endbetrag
ICh habe doch noch ein Problem!! Er rechnet mir die Werte nicht aus!
Wenn ich als Nettowert 1000 eingebe, dann schreibt er mir bei der ersten Radio wie rwartet 1000 auch hin, aber bei den anderen schreibt er ebenfals 1000 und dass kann ja laut Rechnung nicht sein! Und bei der letzten Radio gibt er mir eine völlig andere Zahl an |
Alle Zeitangaben in WEZ +1. Es ist jetzt 08:45 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