![]() |
Re: Delphi Zinsrechner
Tätige die Fehlermeldungen doch dann, wenn die Fehler auch auftreten.
Delphi-Quellcode:
So in etwa, möglich wäre auch Zwischenspeichern der Fehler und Ausgabe am Ende, das kann man recht variabel handhaben.
val(edit1.text, anfangskapital, code);
if code <> 0 then MessageBox(0,'Fehlerhafte Eingabe in Edit1',nil,0) else begin val(edit3.text, Jahre, code2); if code <> 0 then MessageBox(0,'Fehlerhafte Eingabe in Edit3',nil,0); end; |
Re: Delphi Zinsrechner
Zitat:
Der Tipp hat mir entscheidend weiter geholfen :-D Vielen Dank. Ich denke ich dürfte soweit fertig sein. Zum Abschluß noch der komplette Code: [code=delphi] var Form1: TForm1; code: Integer; code2: Integer; Anfangskapital: Integer; Jahre: Integer; Endkapital: real; Zinssatz : real; implementation {$R *.dfm} procedure TForm1.Button1Click(Sender: TObject); begin try val (edit1.text, anfangskapital, code); // E ingabe val (edit3.text, Jahre, code2); // E ingabe if (code <>0) and (code2 <> 0) then begin MessageDlg ('Eingabefehler:' +#13#13+ 'Variable = Anfangskapital' +#13+ 'Stelle des Fehlers = ' +intToStr(code) +#13#13+ 'Falsches Zeichen = ' + Edit1.text [code]+#13#13#13+ 'Variable = Laufzeit' +#13+ 'Stelle des Fehlers = ' +intToStr(code2) +#13#13+ 'Falsches Zeichen = ' + Edit3.text [code2]+#13#13+ 'Bitte Eingabe wiederholen...' +#13+ 'Nur ganze Zahlen (0-9) erlaubt!', mtWarning,[mbOK],0) end //end if code <> 0 and code2 <>0 then else if code <> 0 then MessageDlg ('Eingabefehler:' +#13#13+ 'Variable = Anfangskapital' +#13+ 'Stelle des Fehlers = ' +intToStr(code) +#13#13+ 'Falsches Zeichen = ' + Edit1.text
Code:
Noch einmal vielen Dank! Wird bestimmt nicht meine letzte Frage gewesen sein :wink:
+#13#13+
'Bitte Eingabe wiederholen...' +#13+ 'Nur ganze Zahlen (0-9) erlaubt!', mtWarning,[mbOK],0) else if code2 <> 0 then MessageDlg ('Eingabefehler:' +#13#13+ 'Variable = Laufzeit' +#13+ 'Stelle des Fehlers = ' +intToStr(code2) +#13#13+ 'Falsches Zeichen = ' + Edit3.text [code2]+#13#13+ 'Bitte Eingabe wiederholen...' +#13+ 'Nur ganze Zahlen (0-9) erlaubt!', mtWarning,[mbOK],0) else if (code = 0) and (code2 = 0) then begin if Jahre <=4 then begin Zinssatz := 3; Label4.Caption := 'mit einem Zinssatz von 3%'; end //end Jahre <=4 else begin Zinssatz := 5; Label4.Caption := 'mit einem Zinssatz von 5%' ; end; //end Jahre >4 if Jahre >= 10 then begin Zinssatz := 7 ; Label4.Caption := 'mit einem Zinssatz von 7%' ; end; //end Jahre >= 10 begin Endkapital := (Round(100*(Anfangskapital * exp (Jahre * ln (1+ Zinssatz/100))))/100) ; Label2.Caption := FloatToStr (Endkapital) end end //end if code = 0 and code2 = 0 then except MessageDlg ('Felder dürfen nicht leer sein!'+#13+ 'Falls alle Felder ausgefüllt wurden bitte kleinere Werte benutzen',mtWarning,[mbOk],0); end;//end try - except end;//end procedure procedure TForm1.Button2Click(Sender: TObject); begin Edit1.Text := (''); Edit3.Text := (''); Label2.Caption := 'Endkapital'; Label4.Caption := 'Zinssatz'; edit1.SetFocus ; edit1.color := clyellow; end; // end button2click procedure TForm1.Edit1KeyPress(Sender: TObject; var Key: Char); begin if Key = #13 then begin edit3.SetFocus; edit3.Color := clyellow; edit1.Color := clwhite; end; end; procedure TForm1.Edit3KeyPress(Sender: TObject; var Key: Char); begin if Key = #13 then begin Button1.Click; edit3.Color := clwhite; end; end; procedure TForm1.FormShow(Sender: TObject); begin edit1.SetFocus; edit1.Color := clyellow; end; end. Mfg Siggy |
Alle Zeitangaben in WEZ +1. Es ist jetzt 01:05 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