Entwickler-Ecke

Delphi Language (Object-Pascal) / CLX - Problem mit OnKeyPress und den Key an andere Prozedur ..


friesi - Mi 17.09.03 17:51
Titel: Problem mit OnKeyPress und den Key an andere Prozedur ..
.. weitergeben.

Zu meinem Problem:

Ich habe zwei Prozeduren.
Sinn der beiden ist die Eingabeüberprüfung vom Editfeld.

Beim OnKeyPress des Editfeldes wird der Inhalt der Key Variable an eine andere Prozedur übermittelt


Delphi-Quelltext
1:
gueltigkeit(Key);                    


die Prozedur sieht so aus:

Delphi-Quelltext
1:
2:
3:
4:
5:
6:
7:
procedure tfrmmain.gueltigkeit(Key:char);
begin
 if not (key in [#48..#57,#8]) then
  begin
   Key := #0;
  end;
end;


Wenn nun im Editfeld ein Buchstabe eingegeben wird, sollte er ihn nicht anzeigen, doch das macht er.
Ich denke das liegt daran, das er die Key-Variable zwar auf den Wert #0 setzt aber dies keine Bedeutung mehr hat, da dies in einer anderen Prozedur geschieht.

Wenn ich es nämlich direkt in die OnKeyPress Prozedur schreibe, funktioniert es.
Doch leider kann ich das Programmtechnisch nicht machen, da ich diese Gültigkeitsprüfung als eigene Prozedur brauche.

Denke ich muss den Inhalt des Key wieder an die Prozedur von OnKeyPress schicken, nur wie stelle ich das an?

Oder habe ich da einen Denkfehler?


cbs - Mi 17.09.03 18:22

huhu

versuch mal


Delphi-Quelltext
1:
procedure tfrmmain.gueltigkeit(var Key:char);                    


beachte das VAR


friesi - Mi 17.09.03 18:34

Danke :-)
So einfach kann eine Lösung sein :D

Klappt nun Prima.