![]() |
Re: selber erkennen von CheckBox
Erstens pushen ist erst nach 24h erlaubt
zweitens benutze bitte die Delphi Tags
Code:
dritens hast du einen Fehler: du prüfst zuerst den RadioButton1 dann 3 und dann die 2 die Beiläge Preise werden aber immer mehr.
[delphi][/delphi]
viertens kannst du mit begin und end die Befehle "gruppieren"
Delphi-Quellcode:
If RadioButton1.checked then //Prüfen ob es markiert ist
bergin if CheckBox1.Checked then Kosten:= Kosten + 0.55; //wenn ja dann hier her if CheckBox2.Checked then Kosten:= Kosten + 0.55; ... end; If RadioButton2.checked then //wenn nicht dann hier her bergin if CheckBox1.Checked then Kosten:= Kosten + 0.55; if CheckBox2.Checked then Kosten:= Kosten + 0.55; ... end; If RadioButton3.checked then bergin if CheckBox1.Checked then Kosten:= Kosten + 0.55; if CheckBox2.Checked then Kosten:= Kosten + 0.55; ... end; |
Re: selber erkennen von CheckBox
Entschuldige wenn ich so offen bin, aber bei dem Code rollen sich einem ja die Fußnägel auf. Nicht böse gemeint (meine ersten Progs sahen auch nicht unbedingt schön aus), aber ich denke, im Dienste der Lesbarkeit wäre wohl folgendes besser (siehe auch mein vorheriger Post):
Delphi-Quellcode:
Genau für solche Sachen ist die Tag property ja da: Um dem Programmierer die Möglichkeit zu geben, Daten mit in der Control abzuspeichern--notfalls halt als pointer.
var Belagkosten,
Grundkosten, Gesamtkosten: real; i : integer; begin Belagkosten := 0; for i := 0 to (ControlCount - 1) do // Alle untergeordneten Controls des Forms durchlaufen if Controls[i] is TCheckbox then // Gucken was das für ne Control ist Belagkosten := Belagkosten + Controls[i].Tag / 100; // Speicher in Tag den Preis in Cents if Radiobutton3.Checked then Belagkosten := Belagkosten * 2; // Bei großer Pizza kostet der Belag doppelt if Radiobutton1.Checked then Grundkosten := 1,50; if Radiobutton2.Checked then Grundkosten := 2,30; if Radiobutton3.Checked then Grundkosten := 3,00; Gesamtkosten := Grundkosten + Belagkosten; Label3 := FloatToStr(Gesamtkosten); end; Den Tipp von dfried find ich übrigens auch gut (-> Radiogroup). Macht den Code nochmal eine Ecke eleganter. Und schon richtig, interessante Programmidee :mrgreen: Guten appetit |
Alle Zeitangaben in WEZ +1. Es ist jetzt 01:33 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