jee0404
Messages postés131Date d'inscriptionjeudi 21 octobre 2004StatutMembreDernière intervention27 octobre 2009
-
19 févr. 2007 à 20:56
jee0404
Messages postés131Date d'inscriptionjeudi 21 octobre 2004StatutMembreDernière intervention27 octobre 2009
-
22 févr. 2007 à 15:22
bonjour,
J,ai un problème avec un textbox numérique. C'est pour la rentré de chiffre dans un textbox. Le problème c'est que je met l'inputmask a '99,999.99' et quand je le fait partir ,il m'affiche '0.00' dans le textbox parce que ma variable qui est dans le textbox est initialisé a 0. Quand j'entre 25 dans le textbox exemple " 25 0.00" et je fait enter , le contenu de la virable apres est de "25" , c'est qui est parfais, mais quand j'utilise une autre touche pour sortie et l'entregistrer comme pgdw ou pgup , la quand j'entre 25 ex : "25 0.00" la il me sort 250 ! ,comment faire pour que le textbox réagisse de la même façon que quand on pése sur ENTER, j'ai essayer de le sélectionner au complet ,mais je peut pas faire ca . Pouvez-vous m,aider ?
PS je vous envoye le code de mon textbox
DEFINE CLASS
Do case
Case (nKeyCode=46 or (nKeyCode>=48 and nKeyCode<=57)) and len(this.cSoFar)< llsd + 1
Nodefault
This.cSoFar=this.cSoFar+chr(nKeyCode)
This.setvalue
If len(this.csofar)=llsd
?? chr(7)
Endi
Case nKeyCode=46 and len(this.cSoFar)= llsd
Nodefault
This.cSoFar=this.cSoFar+chr(nKeyCode)
This.setvalue
Case nKeyCode>=48 and nKeyCode<=57 and len(this.cSoFar)<lld and len(this.cSoFar)>llsd
Nodefault
This.cSoFar=this.cSoFar+chr(nKeyCode)
This.setvalue
If len(this.cSoFar)=lld
?? chr(7)
Endi
Case nKeyCode=127 and len(this.cSoFar)#1
Nodefault
This.cSoFar=substr(this.cSoFar,1,(len(this.cSoFar)-1))
This.setvalue
Case nKeyCode=7
Nodefault
This.cSoFar="0"
This.setvalue
Case len(this.cSoFar)=lld
nodefault
?? chr(7)
Case nKeyCode = 43
Nodefault
If LEFT(THIS.cSoFar,1) = "-"
This.cSoFar = SUBSTR(THIS.cSoFar,2)
This.SetValue()
Endif
Case nKeyCode = 45
* - key
Nodefault
If LEFT(THIS.cSoFar,1) <> "-"
This.cSoFar = "-" + THIS.cSoFar
This.SetValue()
Endif
Case nKeyCode=9 or nKeyCode=15 or nKeyCode=13 or nKeyCode=24 or nKeyCode=5
Otherwise
Nodefault
Endc
ENDPROC
PROCEDURE GotFocus
DoDefault()
public llsd,lld
This.csofar="0"
cnt=1
lcommas=0
do while cnt<len(this.inputmask)
if subs(this.inputmask,cnt,1)=","
lcommas=lcommas+1
endi
cnt=cnt+1
endd
if lcommas=2
llsd=rat(".",this.inputmask)-2
lld=len(this.inputmask)-1
endi
if lcommas=1
llsd=rat(".",this.inputmask)-1
lld=len(this.inputmask)
endi
if lcommas=0
llsd=rat(".",this.inputmask)
lld=len(this.inputmask)+1
endi
ldec=len(this.inputmask)-rat(".",this.inputmask)
set decimals to ldec