Delphi-PRAXiS

Delphi-PRAXiS (https://www.delphipraxis.net/forum.php)
-   Object-Pascal / Delphi-Language (https://www.delphipraxis.net/32-object-pascal-delphi-language/)
-   -   Delphi Fehlermeldung selber schreiben (https://www.delphipraxis.net/62483-fehlermeldung-selber-schreiben.html)

Ene 5. Feb 2006 12:52


Fehlermeldung selber schreiben
 
Hi!

Ich habe schon das Forum durchsucht und leider nichts dagzu gefunden.
Ich wollte eine Fehlermeldung schreiben (ein alert-Fenster).
Diese Fehlermeldung soll "sagen", dass die Eingabe von Buchstaben nicht erlaubt ist.
Könntet ihr mir hier evtl. weiterhelfen?

Gruß Ene

SirThornberry 5. Feb 2006 12:55

Re: Fehlermeldung selber schreiben
 
eine Messagebox wäre das passende:
Delphi-Quellcode:
MessageBox(parentHandle, 'DeinFehler', 'MsgBoxÜberschrift', MB_OK or MB_ICONERROR);

Christian Seehase 5. Feb 2006 13:23

Re: Fehlermeldung selber schreiben
 
Moin Ene,

erst einmal herzlich willkommen hier in der Delphi-PRAXiS.

Das hat jetzt zwar nichts mit Deine Frage zu tun, fällt mir aber bei Deiner Problembeschreibung ein:

Mir gefällt es besser, wenn man ungültige Eingaben erst gar nicht zulässt, anstatt hinterher eine Fehlermeldung zu bringen.

Ene 5. Feb 2006 13:48

Re: Fehlermeldung selber schreiben
 
Ja so hatte ich es mir anfangs auch gedacht, aber ich bin in Delphi noch nicht so fit :?
Könntest du mir evtl. verraten wie ich sowas machen könnte?
Ich würde es mit einer if-Anweisung machen aber was müsste ich den dann als Bedingung
schreiben? Ich hätte an folgendes gedacht:
Delphi-Quellcode:
bio_vor:= StrToInt(Edit2.Text);
bio_h:= StrToInt(Edit4.Text);
bio_kosten:= StrToInt(Edit6.Text);
ergebnis_b:= (bio_kosten - bio_vor)/bio_h;

if ergebnis_b = ??? then
Was müsste ich nun anstatt den 3 Fragezeiche schreiben?
Gibt es etwas wo das ganze alphabet vertreten ist?

SirThornberry 5. Feb 2006 13:59

Re: Fehlermeldung selber schreiben
 
du könntest im OnKeyPress prüfen ob eine Zahl eingegeben wurde, ansonsten verwirfst du die Eingabe
Delphi-Quellcode:
if pos(key, '0123456789') < 1 then
  key := #0;

leddl 5. Feb 2006 14:03

Re: Fehlermeldung selber schreiben
 
Was Christian meinte war, daß du bereits bei der Eingabe (OnKeyPress) in deine Editfelder nur Zahlen zulässt:
Delphi-Quellcode:
if not key in ['0'..'9'] then
  key := #0;
Solltest du auch Kommazahlen benötigen wird die Abfrage natürlich etwas komplizierter, da du ja auch noch andere Dinge prüfen mußt.

Ene 5. Feb 2006 14:13

Re: Fehlermeldung selber schreiben
 
Diesen Befehl verstehe ich nur, wo muss ich das ganze nun eintragen?

dahead 5. Feb 2006 14:15

Re: Fehlermeldung selber schreiben
 
Zitat:

Zitat von SirThornberry
du könntest im OnKeyPress prüfen

das ist die antwort auf deine frage. Klick auf Events oder Ereignisse im Objekt-Inspektor und doppelt auf das Feld "OnKeyPress".

Ene 5. Feb 2006 14:18

Re: Fehlermeldung selber schreiben
 
Hey supi :D
Es hat geklappt. Mal wieder was dazu gelernt.
Danke euch!!! :hello:


Alle Zeitangaben in WEZ +1. Es ist jetzt 21: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