FAQ » Tekst

Jak kontrolować wpisywane znaki np. w TEdit

Czasem chcemy, żeby do edita dało się wpisać np. same cyfry. Aby to zrobić należy dać odpowiedni kod w zdarzeniui OnKeyDown:
var
  KeysSet: set of Char;
begin
  KeysSet := [#8, #11, #13, #28, #29, #48..#57];  //tu stawiamy jakie znaki są dozwolone + nawigacja (czyli np. kursory, home, itp.), wszystko w ASCII
  if not(key in KeysSet) then
    Key := #0;

3 komentarze

WeeR 2004-07-31 17:04

Wpiszesz ich kod ascii, np

if Pos(Key, '0123456789' + #8 + #10 + #13 {itp, itd..}) = 0 then

czarownik 2004-07-20 01:17

jest latwiejszy sposob: w onkeypress wklepac
if Pos(Key, '0123456789' + #8) = 0 then
    Key:=#0;
oczywiscie mozna sie domyslic ze jest to procedura umozliwiajaca wpisywanie tylko liczby ('0123456789' - no ale mozna wlkepac wszystko co sie chce miedzy apostrofy...)

Ludomir 2004-07-22 15:32

a jak określisz np. kursor, przycisk Backpase, home, itp?