/ Forside / Teknologi / Udvikling / VB/Basic / Nyhedsindlæg
Login
Glemt dit kodeord?
Brugernavn

Kodeord


Reklame
Top 10 brugere
VB/Basic
#NavnPoint
berpox 2425
pete 1435
CADmageren 1251
gibson 1230
Phylock 887
gandalf 836
AntonV 790
strarup 750
Benjamin... 700
10  tom.kise 610
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
>
>



Søg
Reklame
Statistik
Spørgsmål : 177558
Tips : 31968
Nyheder : 719565
Indlæg : 6408903
Brugere : 218888

Månedens bedste
Årets bedste
Sidste års bedste