if not Key in oder if key in

Von: , Frage gestellt am Do, 19. Mär 2009

Hallöchen,

was ist eigtl. einfacher alle Zahlen und alle möglichen Zeichen oder das Alphabet mit nur einigen Zeichen mit KeyPress abzufangen?

Gibt es die fortlaufenden Punkte in (0..9) auch für das Alphabet?

Danke und Gruß
CherryDip

2 Antworten zu dieser Frage

  1. Antwort von nach 18 Stunden 0 hilfreich
    wie üblich...

    Hallo,

    ... kommt es drauf an, was Du machen willst.
    Ich würde die Menge (das Set) möglichst klein halten. Typisch ist zB das hier:

    procedure TForm1.Edit1KeyPress(Sender: TObject; var Key: Char);
    begin
    if not (key in ['0'..'9',#8,#13]) then key := #0;
    end;
    


    um nur Zahlen zuzulassen.
    Natürlich geht auch sowas (nur Buchstaben):

    if not (key in ['A'..'Z','a'..'z',#8,#13]) then key := #0;
    


    Dabei hast du aber das Problem, dass Du dann die Umlaute und 'ß' noch zusätzlich einfügen musst.

    Gruß, Niels

    • Antwort von nach 20 Stunden 0 hilfreich
      Re: wie üblich...

      Hi Niels,

      das mit dem genauen code war mir schon klar nur nicht ob das "'A'..'Z'" im if not (key in ['A'..'Z','a'..'z',#8,#13]) then key := #0;
      möglich ist, da bei mir das nicht funktionierte - ich probiers halt nochmal! Dabei hast du aber das Problem, dass Du dann die Umlaute und
      'ß' noch zusätzlich einfügen musst.
      Und die sollen halt nicht möglich sein... Nur ABC, Back und der Unterstrich!

      Danke Dir

      CherryDip

Keine passende Antwort gefunden? Jetzt eigene Frage stellen!