Kan man teste om en tekstbox...

Tags:    visual-basic

Kan man teste om en tekstbox indeholder tal? (af typen INT)

I så flad hvordan?

-------------------------------------------------
Regards Rasmus Hamberg



3 svar postet i denne tråd vises herunder
1 indlæg har modtaget i alt 1 karma
Sorter efter stemmer Sorter efter dato
Kan man teste om en tekstbox indeholder tal? (af typen INT)

I så flad hvordan?

-------------------------------------------------
Regards Rasmus Hamberg

Jeg ved ikke om der findes en smartere måde:

1) Du kan lave en (for)løkke der tester om hvert char er et tal via 'select case' - og case else der returnere noget underligt som så siger at tallet ikke er en int.

2) Du kan sige: if (len(text1.text) = len(str(val(text1.text)))) then... så er det et hel tal (int)

*) Du skal tjekke om val(text1.text) ligger indenfor det interval som en integer kan indeholde så du ikke laver overflow/underflow eller noget - det skulle vist være fra [-32768;32767] på en 32 bit maskine i VB 6.0, men det er jo bare lige at teste i en applikation for sig selv og så se om den laver overflow når du prøver at give en int værdien :)

Håber dette hjælper :)

update: Kunne være jeg lige skulle uddybe metode nummer 2 :)
hvis du har "hej" og siger val("hej") for du 0, og så vil længderne ikke være ens.
"123" og val("123") vil have samme længde
"12df4" og val("12df4") (val giver 124) så vil længderne ikke passe
længde: man laver val om til en streng og tager længden af denne samt af den oprindelige streng (str()) konverter til en string f.eks. dim i as string : i = str(val(text1.text)) <- eller noget
Hvis der er noget skal du bare spørge :)
// runix

[Redigeret d. 11/12-04 16:51:06 af runix]



Mange TAK!
--------------------------------------------------
Regards Rasmus Hamberg



Mange TAK!
--------------------------------------------------
Regards Rasmus Hamberg


hehe så lidt :)
// runix



t