AGB  ·  Datenschutz  ·  Impressum  







Anmelden
Nützliche Links
Registrieren
Zurück Delphi-PRAXiS Tutorials Delphi Wie man Fehler über Try und Except abfängt!
Tutorial durchsuchen
Ansicht
Themen-Optionen

Wie man Fehler über Try und Except abfängt!

Ein Tutorial von Chegga · begonnen am 21. Nov 2004 · letzter Beitrag vom 28. Nov 2004
Antwort Antwort
Benutzerbild von Chegga
Chegga
Registriert seit: 5. Nov 2004
Hallo,

ich will an dieser Stelle einen kleinen Text zum Thema
Try und Except verfassen, da in letzter Zeit
viele Fragen dazu gekommen sind.

Dazu brauchen wir die Komponenten Label, Edit und
einen Button. Wir wollen das Programm so geschalten,
dass es zu den Zahlen 1-6 die jeweiligen Bedeutungen
sehr gut - ungenügend im Label Preis gibt.

In das Label schreiben wir:
"Gib eine Note ein:"

Den Button nennen wir:
"OK"

Los geht's:

Doppelklick auf den Button1 und es erscheint der Quelltext:

Delphi-Quellcode:
procedure TForm1.Button1Click(Sender: TObject);
begin

end;
Zwischen procedure und begin fügen wir folgendes ein: var Note: Integer; Das ganze sieht dann so aus:

Delphi-Quellcode:
procedure TForm1.Button1Click(Sender: TObject);
var Note: Integer;
begin

end;
Jetzt kommt das eigentliche Programm:

Delphi-Quellcode:
procedure TForm1.Button1Click(Sender: TObject);
var Note: Integer;
begin
  try
    Note := StrToInt (Edit1.Text)
    if Note = 1 then Label1.Caption := 'sehr gut';
    if Note = 2 then Label1.Caption := 'gut';
    if Note = 3 then Label1.Caption := 'befriedigend';
    if Note = 4 then Label1.Caption := 'ausreichend';
    if Note = 5 then Label1.Caption := 'mangelhaft';
    if Note = 6 then Label1.Caption := 'ungenügend';
  except
    Label1.Caption := 'Schwachsinn!';
  end;
end;
Startet das Programm und gebt die Zahlen 1-6 ein!
Das Programm antwortet mit den jeweiligen Noten als Wörter.

Doch was ist, wenn man nun aus Versehen einen Buchstaben eingibt?
Dann erscheint eine Fehlermeldung von Delphi:
...Meldung: "t' ist kein gültiger Intergerwert'. Prozeß wurde
angehalten...

Drückt einfach auf OK ein schließt das Programm.
Wir haben etwas vergessen.
Unter Tools, Debugger-Optionen, BS-Exceptions unten
Integrierte Fehlersuche deaktivieren. Damit teilt ihr Delphi mit,
dass ihr einen möglichen Fehler selber bereinigen möchtet!
Das haben wir mit try und except gemacht.
Schaut euch den Quelltext noch einmal an.
Hier das Prinzip:

try (deutsch=versuche)
// hier stehen alle Befehle, die Versuchsweise durchgeführt werden

except (deutsch=außer)
// hier stehen alle Befehle, die einen Fehler auswerten und ihn dann bereinigen

Das Prinzip:

try

AnweisungsBlock 1

except

AnweisungsBlock 2

end;

Der Anweisungsblock nach try hört da auf, wo except anfängt.
Der Anweisungsblock except muss immer mit einem end; abgeschlossen
weden!

Ich hoffe ich konnte damit ein wenig helfen!!

MfG Marc
Grüße aus Kirchheim Teck
 
Dax
 
#2
  Alt 21. Nov 2004, 12:51
Gehört das nicht in die Tutorial/Kurse-Sparte?

(und Delphi-Code bitte mit den entsprechenden Tags versehen)
  Mit Zitat antworten Zitat
Benutzerbild von Chegga
Chegga

 
Delphi 7 Architect
 
#3
  Alt 21. Nov 2004, 12:53
Hi,

stimmt! Sorry!!

MfG Marc
Marc P.
  Mit Zitat antworten Zitat
Benutzerbild von fkerber
fkerber

 
Delphi XE Professional
 
#4
  Alt 21. Nov 2004, 13:38
Hi!

Und was die 6 If-Abfragen angeht: Delphi-Referenz durchsuchenCase


Ciao Frederic
Frederic Kerber
  Mit Zitat antworten Zitat
Benutzerbild von jfheins
jfheins
 
#5
  Alt 21. Nov 2004, 13:41
Es wäre villeicht auch hilfreich, wenn du auch try ... finally erläutern würdest.
P.S. Verwende doch Delphi-Referenz durchsuchencase
  Mit Zitat antworten Zitat
21. Nov 2004, 13:53
Dieses Thema wurde von "Daniel" von "Object-Pascal / Delphi-Language" nach "Tutorials und Kurse" verschoben.
CodeRed
 
#7
  Alt 28. Nov 2004, 14:42
Also ich finde das Tutorial sehr hilfreich. Ok, in seinem Beispiel könnte man es auch anders lösen, aber ich habe einen anderen Fall, bei dem ich diese Sache super verwenden kann.

also danke schön!!
  Mit Zitat antworten Zitat
Benutzerbild von Chegga
Chegga

 
Delphi 7 Architect
 
#8
  Alt 28. Nov 2004, 14:46
Bitte, bitte CodeRed,

es war auch mein Ziel mit diesem Tutorial anderen zu helfen!!
Schön das es dich weitergebracht hat, bzw. dir geholfen hat.

MfG Marc
Marc P.
  Mit Zitat antworten Zitat
Benutzerbild von SirThornberry
SirThornberry

 
Delphi 2006 Professional
 
#9
  Alt 28. Nov 2004, 15:43
um das Tutorial noch zu vervollständigen könntest du noch demonstrieren wie man im Except auf bestimmte Fehler eingehen kann.
Jens
  Mit Zitat antworten Zitat
Antwort Antwort


Forumregeln

Es ist dir nicht erlaubt, neue Themen zu verfassen.
Es ist dir nicht erlaubt, auf Beiträge zu antworten.
Es ist dir nicht erlaubt, Anhänge hochzuladen.
Es ist dir nicht erlaubt, deine Beiträge zu bearbeiten.

BB-Code ist an.
Smileys sind an.
[IMG] Code ist an.
HTML-Code ist aus.
Trackbacks are an
Pingbacks are an
Refbacks are aus

Gehe zu:

Impressum · AGB · Datenschutz · Nach oben
Alle Zeitangaben in WEZ +1. Es ist jetzt 08:58 Uhr.
Powered by vBulletin® Copyright ©2000 - 2024, Jelsoft Enterprises Ltd.
LinkBacks Enabled by vBSEO © 2011, Crawlability, Inc.
Delphi-PRAXiS (c) 2002 - 2023 by Daniel R. Wolf, 2024 by Thomas Breitkreuz