Accueil > Forum > > > > textbox numérique
textbox numérique
lundi 19 février 2007 à 20:56:29 |
textbox numérique

jee0404
|
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 CLSTXTBOX AS TEXTBOXTOP = (35*CSTM)LEFT = (216*CSTM)WIDTH = (55*CSTM)HEIGHT = (18*CSTM)VALUE = 0ControlSource = CODE2RightToLeft = .F.InputMask = '99,99.99' PROCEDURE KEYPRESSLPARAMETERS NKEYCODE, NSHIFTALTCTRL*!* NODEFAULT IF NKEYCODE = 13 && .or. NKEYCODE = 3 .OR. NKEYCODE = 18CLEAR eventsSTORE this .VALUE TO CODE2ENDIF if NKEYCODE = 27CLEAR EVENTSENDIF IF NKEYCODE = 3 .OR. NKEYCODE = 18CLEAR EVENTSSTORE THIS .Value TO CODE2ENDIFENDPROC PROCEDURE LostFocus STORE this .VALUE TO CODE2MESSAGEBOX("PERDU LE FOCUS")MESSAGEBOX(CODE2)ENDPROC ENDDEFINE Merci d'avance
|
|
jeudi 22 février 2007 à 12:31:59 |
Re : textbox numérique

Mike Gagnon
|
Réponse acceptée !
Voici un classe que j'utilise, roule ce qui suit dans un prg
o = CREATEOBJECT("form") o.addobject("txtnumber2","txtnumber2") o.txtnumber2.visible = .t. o.show(1) DEFINE CLASS txtnumber2 AS textbox Alignment = 3 Value = 0 InputMask = "9,999,999.99" SelectOnEntry = .T. Name = "txtnumber2" csofar = .F. ndecimal = .F.
PROCEDURE setvalue THIS.Value = VAL(THIS.cSoFar) THIS.Refresh() ENDPROC
PROCEDURE inputmask_assign LPARAMETERS vNewVal wait window "m.vNewVal" +m.vNewVal wait window "this.inputmask" + this.inputmask THIS.InputMask = m.vNewVal THIS.SetValue() ENDPROC
PROCEDURE setdecimal ENDPROC
PROCEDURE LostFocus rele llsd,lld set decimals to ENDPROC
PROCEDURE KeyPress Lparameters nKeyCode, nShiftAltCtrl
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
ENDPROC
ENDDEFINE
Mike Gagnon
|
|
jeudi 22 février 2007 à 15:22:19 |
Re : textbox numérique

jee0404
|
Merci c'est une bonne idee , une bonne alternative
|
|
Cette discussion est classée dans : textbox, numérique, value, nkeycode, cstm
Répondre à ce message
Sujets en rapport avec ce message
textbox numérique [ par tmcuh ]
Bonjour je suis débutant en fox et j'aurais aimé connaitre la technique pour rendre une textbox uniquement numérique et si possible pour une autre en
textbox entré de donné [ par jee0404 ]
bonjour, J,ai une problème encore avec le textbox , je voudrais savoir si on peut evité de prendre le focus quand on entre le derniere ch
problème automation excel [ par gregorian ]
Bonjour à tous, J'ai un petit problème de mise en page excel.Dans un application, je récupère des données dans un curseur qui doit alors ouvrir un fic
affichage de données et tri [ par zouheir_ali ]
Bonjour à tous,je travaille avec vfp9 et sqlserver.dans une form j'ai des zones et une grille qui sont reliés par le même curseurje crée un curseur av
TEXTBOX, completer par des zéros [ par asmahane24 ]
Bonjour;Je developpe ma premiere application avec VFP9 et je trouve un peu de difficulter pour realiser le point suivant:Dans ma form j'ai ajouté un t
probleme avec le curseur dans textbox [ par mono19 ]
je suis amateur, et j'ai développé une solution sous foxpro 9, et depuis quelques temps j'ai un problème dans un formulaire qui contient des textboxs,
test sur un textBox [ par slimvir ]
bonjour,j'aimerai bien tester le champ dans un text box si c'est un entier je passe sinon j'affiche un message.je n'ai pas trouver comment faire le co
modification d'une table [ par slimvir ]
bonjour, j'utilise ce code pour modifier une ligne d'une table mais cette ligne ne se modifier mais elle s'ajoute ?? merciSELECT table1replace Codcli
Probleme avec ma textbox [ par bouny62 ]
Bonsoir, j'ai installer une textbox,tout va bien mais quand je veux poster un message,il me dit Désolé ce module n'existe pas ou l'adresse que vous a
problème avec "NUMLOCK = .T." en entrée de textbox sous VFP9 [ par JAIMES ]
Bonjour, Je suis amateur, et je tente de migrer depuis DOS vers VPF9. Sous VFP9, - le 'FORM' étant créé normalement - j'ai un problème à l'entrée da
Livres en rapport
|
Derniers Blogs
ENUMERABLECOLLECTIONENUMERABLECOLLECTION par Matthieu MEZIL
Prenons le scénario suivant. On utilise MVVM. On a les deux classes suivantes dans le model : public class Child { } public class Parent { private ObservableCollection < Child > _children; public ObservableCollection < Child > Children { get {...
Cliquez pour lire la suite de l'article par Matthieu MEZIL [HS] CHROME 6 + MOI = COUP DE GUEULE ![HS] CHROME 6 + MOI = COUP DE GUEULE ! par JeremyJeanson
Attention, le poste qui suit n'est pas la complainte d'une personne : Qui n'aime pas Chrome. D'un anti Google. D'un développeur qui a un poil énorme dans la main. Ceux qui me fréquentent savent que je change de navigateur favori tous les 2 ou 3 mois afin ...
Cliquez pour lire la suite de l'article par JeremyJeanson [WP7] UTILISER UN WRAPPANEL DANS UNE APPLICATION WINDOWS PHONE 7[WP7] UTILISER UN WRAPPANEL DANS UNE APPLICATION WINDOWS PHONE 7 par Audrey
Lors de la réalisation de ma 2ème application Windows Phone 7, j'ai souhaité utiliser un WrapPanel pour afficher plusieurs photos. Mais le contrôle WrapPanel ne fait pas parti de la liste des contrôles inclus dans le SDK de la version Beta des outils pour...
Cliquez pour lire la suite de l'article par Audrey [WP7] BESOIN D'AVOIR DES DONNéES EN CACHE[WP7] BESOIN D'AVOIR DES DONNéES EN CACHE par Nicolas
Les développeurs ASP.NET ont l'habitude de mettre des données en cache pour éviter de requêter a chaque fois la base de données. Et il est toujours utilie de penser que vos utilisateurs mobiles n'ont pas troujours une super connexion 3G/WIFI et un for...
Cliquez pour lire la suite de l'article par Nicolas [TFS] COMMENT FORCER LA SAISIE D'UN AREA OU ITERATION[TFS] COMMENT FORCER LA SAISIE D'UN AREA OU ITERATION par cyril
Lorsque l'on créé un Work Item dans TFS, il est possible de le classer dans un "area" et dans une "iteration". Dans la plupart des types de projet, un "area" correspond à une catégorie, une "iteration" à un numéro de version. Il est possible de cré...
Cliquez pour lire la suite de l'article par cyril
Logiciels
uTorrent (2.0.4)UTORRENT (2.0.4)C'est un client BitTorrent très puissant et très performant. Comme son nom l'indique, uTorrent (m... Cliquez pour télécharger uTorrent Bureau de Gestion - ERP Devis Facturation (2.02)BUREAU DE GESTION - ERP DEVIS FACTURATION (2.02)- Version gratuite du 10/06/2010
Le Bureau de Gestion est un logiciel dédié à la gestion de l'en... Cliquez pour télécharger Bureau de Gestion - ERP Devis Facturation 4Videosoft Transfert iPod Mac (3.2.08)4VIDEOSOFT TRANSFERT IPOD MAC (3.2.08)4Videosoft Transfert iPod-Mac caractérise principalement à transférer les fichiers iPod vers Mac.... Cliquez pour télécharger 4Videosoft Transfert iPod Mac 4Videosoft HD Convertisseur (3.3.08)4VIDEOSOFT HD CONVERTISSEUR (3.3.08)Etant le meilleur HD Vidéo Convertisseur, 4Videosoft HD Convertisseur, vous pouvez regarder la vi... Cliquez pour télécharger 4Videosoft HD Convertisseur 4Videosoft Transfert iPad Mac (3.2.08)4VIDEOSOFT TRANSFERT IPAD MAC (3.2.08)4Videosoft Transfert iPad-Mac est un logiciel managérial iPad professionnel qui a des fonctions i... Cliquez pour télécharger 4Videosoft Transfert iPad Mac
|