AGB  ·  Datenschutz  ·  Impressum  







Anmelden
Nützliche Links
Registrieren
Thema durchsuchen
Ansicht
Themen-Optionen

Editbox funktion gesucht

Ein Thema von NDR · begonnen am 18. Apr 2007 · letzter Beitrag vom 18. Apr 2007
Antwort Antwort
Seite 1 von 2  1 2      
Benutzerbild von NDR
NDR

Registriert seit: 18. Apr 2007
28 Beiträge
 
Delphi 7 Enterprise
 
#1

Editbox funktion gesucht

  Alt 18. Apr 2007, 16:05
hi @all!
hab ein problem mit dem onchange-ereignis bei delphi 7...
hab hier ein programm geschrieben wo eine eingabe in einem editfeld mit einen ergebnis aus einer rechenaufgabe verglichen werden soll...
wenn das programm startet läuft alles... aber wenn man den eintrag wieder löscht gibts ne fehlermeldung ( '' ist kein gültiger integer wert).
Hab mir jetzt so gedacht das man dort einen zahlenwert automatisch einträgt, zb. 000, der dann "unsichtbar" ist oder den man überschrieben kann... gibt es eine möglichkeit das so irgendwie zu machen oder ganz anders???

hier noch ein bissel quellcode bzgl des problems:
Delphi-Quellcode:
procedure TForm1.Edit3Change(Sender: TObject);
begin
 if strtoint(edit3.text)=x then //x ist hier der zahlenwert, mit dem verglichen werden soll...
  label7.Caption:='Richtig!'
 else
  label7.Caption:='?';
end;
schon mal vorab danke!
da NDR
  Mit Zitat antworten Zitat
mkinzler
(Moderator)

Registriert seit: 9. Dez 2005
Ort: Heilbronn
39.861 Beiträge
 
Delphi 11 Alexandria
 
#2

Re: Editbox funktion gesucht

  Alt 18. Apr 2007, 16:08
-Prüfe vor der konvertierung auf "Leersein"
-Verwende Val() oder TryStrToInt() statt StrToInt()
Markus Kinzler
  Mit Zitat antworten Zitat
Benutzerbild von NDR
NDR

Registriert seit: 18. Apr 2007
28 Beiträge
 
Delphi 7 Enterprise
 
#3

Re: Editbox funktion gesucht

  Alt 18. Apr 2007, 16:12
und wie würde das denn jetzt genau aussehen??? mach delphi auch eher hobbymäßig und wegen der schule und kenne diese prozedure nicht...
  Mit Zitat antworten Zitat
J.P.

Registriert seit: 2. Sep 2006
Ort: Bonn
131 Beiträge
 
Delphi 6 Professional
 
#4

Re: Editbox funktion gesucht

  Alt 18. Apr 2007, 16:16
Ich würde das so, total simpel und ohne andere Prozedure machen,
einfach mit nem try...except block.
Delphi-Quellcode:
procedure TForm1.Edit3Change(Sender: TObject);
begin
try
 if strtoint(edit3.text)=x then //x ist hier der zahlenwert, mit dem verglichen werden soll...
   label7.Caption:='Richtig!
 else
   label7.Caption:='?';
except //Falls die Fehlermeldung kommt, wird label7 auch auf '?' gesetzt
 label7.Caption:='?';
end;
end;
vll ein ganz klein wenig umständlich, aber auch nur ein bischen.


edit: Delphi Syntaxfehler meinerseits berichtigt.
J.P.
...mfG


Phil
  Mit Zitat antworten Zitat
Klaus01

Registriert seit: 30. Nov 2005
Ort: München
5.771 Beiträge
 
Delphi 10.4 Sydney
 
#5

Re: Editbox funktion gesucht

  Alt 18. Apr 2007, 16:18
Delphi-Quellcode:
procedure TForm1.Edit3Change(Sender: TObject);
begin
if edit3.text <> 'then
  begin
    if strtoint(edit3.text)=x then //x ist hier der zahlenwert, mit dem verglichen werden soll...
      label7.Caption:='Richtig!
    else
      label7.Caption:='?';
  end;
end;

Aber bedenke, dass das onChange Ereignis immer ausglöst wird wenn
sich in den Text etwas ändert, also bei jedem Tastendruck.

Grüße
Klaus
Klaus
  Mit Zitat antworten Zitat
Benutzerbild von NDR
NDR

Registriert seit: 18. Apr 2007
28 Beiträge
 
Delphi 7 Enterprise
 
#6

Re: Editbox funktion gesucht

  Alt 18. Apr 2007, 16:26
danke danke!!!
die variante von klaus01 funzt^^ *verbeug*
problem gelöst^^
  Mit Zitat antworten Zitat
mkinzler
(Moderator)

Registriert seit: 9. Dez 2005
Ort: Heilbronn
39.861 Beiträge
 
Delphi 11 Alexandria
 
#7

Re: Editbox funktion gesucht

  Alt 18. Apr 2007, 16:40
Dann gib mal was anderes wie ne Zahl ein.
Markus Kinzler
  Mit Zitat antworten Zitat
J.P.

Registriert seit: 2. Sep 2006
Ort: Bonn
131 Beiträge
 
Delphi 6 Professional
 
#8

Re: Editbox funktion gesucht

  Alt 18. Apr 2007, 16:44
Wenn PEBKAC auftritt, ist meine version besser. Also, wenn Buchstaben anstatt Zahlen eingegeben werden... :p
J.P.
...mfG


Phil
  Mit Zitat antworten Zitat
mkinzler
(Moderator)

Registriert seit: 9. Dez 2005
Ort: Heilbronn
39.861 Beiträge
 
Delphi 11 Alexandria
 
#9

Re: Editbox funktion gesucht

  Alt 18. Apr 2007, 16:48
Ich würde aber, wie weiter oben schon erwähnt, dir TryStrTo...-Versionen dem Exception-Handler vorziehen.
Markus Kinzler
  Mit Zitat antworten Zitat
Klaus01

Registriert seit: 30. Nov 2005
Ort: München
5.771 Beiträge
 
Delphi 10.4 Sydney
 
#10

Re: Editbox funktion gesucht

  Alt 18. Apr 2007, 16:50
Zitat von mkinzler:
Dann gib mal was anderes wie ne Zahl ein.
Na, vielleicht hat er ja noch dieses in seinem Code:

Delphi-Quellcode:
procedure TForm1.Edit3KeyPress(Sender: TObject; var Key: Char);
begin
  if not (key in ['0'..'9',#8]) then
    key:=#0;
end;
Grüße
Klaus
Klaus
  Mit Zitat antworten Zitat
Antwort Antwort
Seite 1 von 2  1 2      


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 05:50 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