/ Forside / Teknologi / Udvikling / Delphi/Pascal / Nyhedsindlæg
Login
Glemt dit kodeord?
Brugernavn

Kodeord


Reklame
Top 10 brugere
Delphi/Pascal
#NavnPoint
oldwiking 603
jrossing 525
rpje 520
EXTERMINA.. 500
gandalf 460
gubi 270
DJ_Puden 250
PARKENSS 230
technet 210
10  jdjespers.. 200
"Fange" og validere input til TEdit
Fra : Thomas Holmgren


Dato : 28-10-02 18:19

Hejsa!

Jeg har lavet en udvidelse af TEdit-komponenten og vil gerne lave et
"filter" der bestemmer hvad der kan skrives i feltet. Det kunne være rigtig
dejligt hvis der er mulighed for at "fange" karakterinput, validere om den
pågældende karakter er lovlig og derefter "sende den videre" så den bliver
synlig i feltet.

Findes der en metode jeg kan override og forhindre at bestemte tegn kan
skrives i feltet?


--
Mvh.
Thomas Holmgren
http://www.cs.auc.dk/~thm/





 
 
Lars Bargmann (28-10-2002)
Kommentar
Fra : Lars Bargmann


Dato : 28-10-02 19:59

Kig lidt på "DoKeyPress" og "KeyPress" på TWinControl (som TEdit jo nedarver
fra....)

du kunne jo lave en override'd KeyPress i retning af den her

procedure TMyEdit.KeyPress(var Key: Char);
begin

if not (key in ['0'..'9', #8, #9, #13, #16]) then
key := #0
else
inherited KeyPress(Key);

end;

....aner ikke om ovenstående virker, men prøv det...


"Thomas Holmgren" <thm@cs.auc.dk> wrote in message
news:3dbd7167$0$11463$ba624c82@nntp02.dk.telia.net...
> Hejsa!
>
> Jeg har lavet en udvidelse af TEdit-komponenten og vil gerne lave et
> "filter" der bestemmer hvad der kan skrives i feltet. Det kunne være
rigtig
> dejligt hvis der er mulighed for at "fange" karakterinput, validere om den
> pågældende karakter er lovlig og derefter "sende den videre" så den bliver
> synlig i feltet.
>
> Findes der en metode jeg kan override og forhindre at bestemte tegn kan
> skrives i feltet?
>
>
> --
> Mvh.
> Thomas Holmgren
> http://www.cs.auc.dk/~thm/
>
>
>
>



Uffe Kousgaard (28-10-2002)
Kommentar
Fra : Uffe Kousgaard


Dato : 28-10-02 21:31

I onKeypress event kan du f.eks. skrive følgende, hvis kun numeriske
værdier skal være mulige:

if not (key in ['0'..'9',decimalseparator,#8]) then key:= #0;

Hvis de skal være heltallige fjerner du blot decimalseparator.

Hvis negative tal også skal være mulige, så tilføj '-' til listen.

Princippet kan selvfølgelig udvides med en egentlig test vha Val
funktionen.

"Thomas Holmgren" <thm@cs.auc.dk> wrote in message
news:3dbd7167$0$11463$ba624c82@nntp02.dk.telia.net...
> Hejsa!
>
> Jeg har lavet en udvidelse af TEdit-komponenten og vil gerne lave et
> "filter" der bestemmer hvad der kan skrives i feltet. Det kunne være
rigtig
> dejligt hvis der er mulighed for at "fange" karakterinput, validere om
den
> pågældende karakter er lovlig og derefter "sende den videre" så den
bliver
> synlig i feltet.
>
> Findes der en metode jeg kan override og forhindre at bestemte tegn
kan
> skrives i feltet?
>
>
> --
> Mvh.
> Thomas Holmgren
> http://www.cs.auc.dk/~thm/
>
>
>
>


Søg
Reklame
Statistik
Spørgsmål : 177483
Tips : 31964
Nyheder : 719565
Indlæg : 6408394
Brugere : 218884

Månedens bedste
Årets bedste
Sidste års bedste