![]() |
if-Anweisungs Problem eines Anfängers
Hallo,
ich versuche gerade ein kleines Programm zu machen, welches prüft, ob eine eingegebene Zahl im Edit1 gerade oder ungerade ist. Wenn Buchstaben eingegeben werden, kommt eine Fehlermeldung. Jetzt kann man aber immer noch eine Zahl schreiben, sie dann löschen, und das Feld bleibt in der Farbe von der gerade geprüften Zahl, wegen der if-Anweisung. Jetzt möchte ich noch ein else dranhängen, das das feld wieder Weiß färbt wenn laenge nicht nicht gleich 0 (also gleich null). Irgendwie bekomme ich das aber nicht hin. Kann mir jemand helfen? Hier ein Teil des Codes:
Delphi-Quellcode:
Vielen Dank für eure Hilfe.
procedure TForm1.Edit1Change(Sender: TObject);
var zahla: string; zahlz,laenge: integer; begin zahla := Edit1.Text; laenge := length(zahla); if laenge<>0 then begin try zahlz := StrToInt(zahla[laenge]); except on EConvertError do begin ShowMessage('Bitte nur Zahlen eingeben.'); Edit1.SetFocus; Edit1.Text := ''; Exit; end; end; if zahlz mod 2 = 1 then begin Edit1.Color:=clRed; end else Edit1.Color:=clBlue; end else Edit1.Color:=clWhite; end; end; Gruß Futzel |
Re: if-Anweisungs Problem eines Anfängers
im except-zweit einfach das Edit leeren
|
Re: if-Anweisungs Problem eines Anfängers
Formatier mal deinen Code, damit man ihn auch lesen kann.
|
Re: if-Anweisungs Problem eines Anfängers
Hi,
vielleicht machste in Onchage das:
Delphi-Quellcode:
[edit=Luckie]Delphi-Tags ergänzt. Spider? Wie lange bist du schon hie rim Forum? :roll: Mfg, Luckie[/edit]
procedure TForm1.Edit1Change(Sender: TObject);
var zahla: string; zahlz,laenge: integer; begin zahla := Edit1.Text; laenge := length(zahla); if laenge<>0 then begin try zahlz := StrToInt(zahla[laenge]); except on EConvertError do begin ShowMessage('Bitte nur Zahlen eingeben.'); Edit1.SetFocus; Edit1.Text := ''; Exit; //Kann nach meiner Meinung auch weggelassen werden end; end; if zahlz mod 2 = 1 then begin Edit1.Color:=clRed; end else Edit1.Color:=clBlue; {****************************************} if Edit1.Text = '' then Edit1.Color := clWhite; {****************************************} end; @Luckie: Die Tags hab ich grad selber gesetzt :P edit: Code formatiert |
Re: if-Anweisungs Problem eines Anfängers
Ich bedanke mich bei euch, und sry, das ich den Code nicht formatiert habe, das nächste mal mache ich das.
Vielen Dank und Grüße von Futzel |
Alle Zeitangaben in WEZ +1. Es ist jetzt 23:51 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