Einzelnen Beitrag anzeigen

Werner

Registriert seit: 20. Dez 2002
Ort: Berlin
3 Beiträge
 
Delphi 5 Enterprise
 
#10
  Alt 20. Dez 2002, 23:23
Hallo Nailor,

hier ein Beispiel, das Dein Problem m.E.
löst.

1. KeyPreview für das Formular auf true stellen

2. das Ereignis OnKeyPress auswerten

Delphi-Quellcode:
procedure TForm1.FormKeyPress(Sender: TObject; var Key: Char);
begin
  if key=#13 then key:= #0
  else if not (key in [#8, #46, #48 .. #57]) then key:= #0;
end;
RETURN (#13) wird über die Zuweisung key:= #0 unterdrückt.
Es werden nur die Zeichen
Backspace, Punkt und die Ziffern 0...9 durchgelassen.

Mit einer anderen Zuweisung als #0 kann man Zeichen auf ein
anderes umbiegen.

Statt einer Zeichenzuweisung kann man auch eine beliebige
Funktion/Prozedur aufrufen.
if key=#13 then TuWas; Wird das gesendete Zeichen nicht gebraucht,
muss zusätzlich wieder die Zuweisung auf #0 erfolgen.
Delphi-Quellcode:
if key=#13 then
  begin
    TuWas;
    key:= #0;
  end;
Ich hoffe, das hilft Dir weiter.

Werner
  Mit Zitat antworten Zitat