/ 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
Maskedit?
Fra : TRN


Dato : 05-04-06 15:43

Hei.
Prøver å få en editbox til å kunne motta nummer, hvor brukeren også kan
skrive negative(minus) nummer. Og hvordan kan mask akseptere bare
hexadesimale(0->F) tall?

- TRN

 
 
Erik Klausen (05-04-2006)
Kommentar
Fra : Erik Klausen


Dato : 05-04-06 18:23

TRN <trn@not.mine> wrote in news:4433d77b$1@news.broadpark.no:

> Hei.
> Prøver å få en editbox til å kunne motta nummer, hvor brukeren også kan
> skrive negative(minus) nummer. Og hvordan kan mask akseptere bare
> hexadesimale(0->F) tall?

Hej TRN.

Den første del er nem. Masken #9999 tillader et positivt tal på op til 5
cifre eller et negativt tal på op til 4 cifre.

Den anden er værre; ihvertfald i Delphi 7. Her må du selv til at
programmere. Du kan udnytte Edit-boksens OnChange-event til at udføre
følgende kode:

procedure TForm1.Edit1Change(Sender: TObject);
VAR
CurPos : Word;
begin
{ Gem cursorens position. Den bliver nulstillet }
{ ved skrivning til Text propertyen }
CurPos := Edit1.SelStart;

IF NOT ( Edit1.Text[ CurPos ] IN [ '0'..'9', 'A'..'F' ] ) THEN
BEGIN
{ Klip det ulovlige tegn ud }
Edit1.Text := Copy( Edit1.Text, 1, CurPos-1 )+
Copy( Edit1.Text, CurPos+1, 100 );
Edit1.SelStart := CurPos-1;
END;
end;


mvh.

Erik Klausen

TRN (06-04-2006)
Kommentar
Fra : TRN


Dato : 06-04-06 19:54

Erik Klausen skrev:
> TRN <trn@not.mine> wrote in news:4433d77b$1@news.broadpark.no:
>
>
>>Hei.
>>Prøver å få en editbox til å kunne motta nummer, hvor brukeren også kan
>>skrive negative(minus) nummer. Og hvordan kan mask akseptere bare
>>hexadesimale(0->F) tall?
>
>
> Hej TRN.
>
> Den første del er nem. Masken #9999 tillader et positivt tal på op til 5
> cifre eller et negativt tal på op til 4 cifre.
>
> Den anden er værre; ihvertfald i Delphi 7. Her må du selv til at
> programmere. Du kan udnytte Edit-boksens OnChange-event til at udføre
> følgende kode:
>
> procedure TForm1.Edit1Change(Sender: TObject);
> VAR
> CurPos : Word;
> begin
> { Gem cursorens position. Den bliver nulstillet }
> { ved skrivning til Text propertyen }
> CurPos := Edit1.SelStart;
>
> IF NOT ( Edit1.Text[ CurPos ] IN [ '0'..'9', 'A'..'F' ] ) THEN
> BEGIN
> { Klip det ulovlige tegn ud }
> Edit1.Text := Copy( Edit1.Text, 1, CurPos-1 )+
> Copy( Edit1.Text, CurPos+1, 100 );
> Edit1.SelStart := CurPos-1;
> END;
> end;
>
>
> mvh.
>
> Erik Klausen

Ja, fant ut at det beste var nok å skrive min egen mask-rutine..
....Takker for svaret :)

- TRN

Søg
Reklame
Statistik
Spørgsmål : 177429
Tips : 31962
Nyheder : 719565
Indlæg : 6407948
Brugere : 218878

Månedens bedste
Årets bedste
Sidste års bedste