|
| textbox Fra : Jette Nielsen |
Dato : 09-12-00 17:14 |
|
Hej
Lige et newbie sp. vedr. textbox...
Hvad er det smarteste at gøre hvis brugeren kun må indtaste et heltal i
boksen?
Mvh. Jette
| |
Helge Bjørkhaug (09-12-2000)
| Kommentar Fra : Helge Bjørkhaug |
Dato : 09-12-00 19:11 |
|
Jette Nielsen <jette-nielsen@get2net.dk> skrev i news:90tl6u$coq$1@news.cybercity.dk
> Hej
>
> Lige et newbie sp. vedr. textbox...
>
> Hvad er det smarteste at gøre hvis brugeren kun må indtaste et heltal i
> boksen?
Private Sub Text1_KeyPress(KeyAscii As Integer)
If Not IsNumeric(Chr$(KeyAscii)) Then KeyAscii = 0
End Sub
Mvh,
Helge
| |
Jette Nielsen (09-12-2000)
| Kommentar Fra : Jette Nielsen |
Dato : 09-12-00 22:30 |
|
Helge Bjørkhaug skrev:
> Private Sub Text1_KeyPress(KeyAscii As Integer)
> If Not IsNumeric(Chr$(KeyAscii)) Then KeyAscii = 0
> End Sub
Jeg takker
Mvh. Jette
| |
Tomas Christiansen (09-12-2000)
| Kommentar Fra : Tomas Christiansen |
Dato : 09-12-00 23:17 |
|
Helge Bjørkhaug skrev:
> Private Sub Text1_KeyPress(KeyAscii As Integer)
> If Not IsNumeric(Chr$(KeyAscii)) Then KeyAscii = 0
> End Sub
Det er nok en lige lovlig kraftig begrænsning, idet det derved ikke længere
er muligt at bruge f.eks. Backspace-tasten (men dog stadig Delete-tasten)
eller benytte muligheden for copy/paste med Ctrl-C/Ctrl-V.
Mon ikke man skal begrænse sig til at sige at alle kontroltegn (ANSI kode 0
til 31) er tilladt samt cifrene 0 til 9?
En anden ting, som nok skyldes min temmelig paranoide holdning til
"indbyggede funktioner", er: Kan man stole på at IsNumeric altid KUN vil
godkende cifre?
Jeg har set eksempler (andre steder end i VB) på, at plus, minus og
decimalkomma også blev accepteret som lovlige numeriske tegn, og eksempelvis
returnerer IsNumeric("0.0") jo True.
Mit forslag er derfor.
Private Sub Text1_KeyPress(KeyAscii As Integer)
If KeyAscii >= Asc(" ") And _
Chr(KeyAscii) Like "[!0123456789]" Then KeyAscii = 7
End Sub
KeyAscii sættes til 7 for at få en lyd, når der tastes noget ikke-tilladt.
Det er nemt at udvide/indskrænke listen af tilladte tegn efter
Like-operatoren, hvis man ønsker andre muligheder.
-------
Tomas
| |
Jan Damkjær Dahl (12-12-2000)
| Kommentar Fra : Jan Damkjær Dahl |
Dato : 12-12-00 01:33 |
|
Er der så nogen af jer kloge hoveder, der i denne forbindelse kan fortælle
hvordan man sletter det sidste indtastede tal i textboxen, f.eks ved at
trykke på en knap.
">
> Mit forslag er derfor.
>
> Private Sub Text1_KeyPress(KeyAscii As Integer)
> If KeyAscii >= Asc(" ") And _
> Chr(KeyAscii) Like "[!0123456789]" Then KeyAscii = 7
> End Sub
>
> KeyAscii sættes til 7 for at få en lyd, når der tastes noget ikke-tilladt.
>
> Det er nemt at udvide/indskrænke listen af tilladte tegn efter
> Like-operatoren, hvis man ønsker andre muligheder.
> -------
> Tomas
>
>
| |
|
|