Accueil > Forum > > > > textbox nombre
textbox nombre
mercredi 1 juillet 2009 à 11:50:14 |
textbox nombre

Sunnydelight
|
Bonjour, Alors voila j'ai un petit problème avec un programme que j'ai fais. Le principe est tel que : L'utilisateur vient saisir un nombre dans une textBox, puis un autre nombre dans une autre TextBox. Ensuite il vient cliquer sur un bouton_click. Dans ce bouton click je fais : Si a<b alors j'affiche un message dans une MsgBox. J'ai bien déclaré mes variables a et b en public pour quelles soient utilisées par toutes les procédures. Et fait dans la procédure de chaque TextBox : a = Cint(TextBox.Text) et b = Cint(TextBox.Text) afin de convertir une chaine en nombre. Mon programme fonctionne tres bien, mais le seul hic c'est que dés que je tape un caractère, au lieux d'un chiffre ou un espace bref un caractère alors le programme plante. J'ai lu qu'il fallait filtres les infos pour ne pas tenir compte de donnée qui n'est pas rapport avec le code. Mais comment le faire? Merci Bye +++
|
|
mercredi 1 juillet 2009 à 12:36:59 |
Re : textbox nombre

hellangel777
|
Bonjour,
Avant d'effectuer ton traitement (a<b) il faut que tu test si les champs sont de type numérique.
Dim numericCheck As Boolean testVar1 = Cint(TextBox1.text) testVar2 = Cint(TextBox2.text) if IsNumeric(testVar1) = True then If IsNumeric(testVar2) = True then 'Traitement else msgbox "La valeur dans la zone 2 n'est pas numérique !" textbox2.text = vbnullstring textbox2.text.setfocus end if else msgbox "La valeur dans la zone 1 n'est pas numérique !" textbox1.text = vbnullstring textbox1.text.setfocus end if
A toi d'adapter.... Bon courage
HellAngel777 Les machines ne font pas d'erreurs Heureusement nous sommes humains
|
|
mercredi 1 juillet 2009 à 12:45:46 |
Re : textbox nombre

PCPT
|
salut,
tu peux adapter le code ci-dessous pour simplement forcer la saisie numérique http://www.codyx.org/snippet_textbox-numerique-seulement_53.aspx#139
++
|
|
mercredi 1 juillet 2009 à 13:22:13 |
Re : textbox nombre

Sunnydelight
|
Ok, je vais essayer sa ce soir alors, et merci pour les conseils !
Bye +++
|
|
mercredi 1 juillet 2009 à 19:04:22 |
Re : textbox nombre

ghuysmans99
|
Plus facile d'utiliser la solution par APIs proposée par PCPT ... 
|
|
jeudi 2 juillet 2009 à 00:53:34 |
Re : textbox nombre

Sunnydelight
|
Bonsoir tous le monde, Alors j'ai adapter le texte pour la toute première réponse et visual ne reconnait pas setfocus ou il me met un message d'erreur. J'ai pourtant bien déclarer les variables mais rien a faire. J'ai tester le code en API mais c'est encorre pire, je pense que je ne dois pas le recopier au bon endroit. Je suis débutant, c'est peut être pour sa que je bloc sur des choses de ce type, bref .J'apprends avec vb.net pour les nuls c'est tres bien mais il y a quelques infos comme le problème que j'énonce qui n'est pas assez approfondie. Quand je cherche sur le net il y a des morceaux de code énorme juste pour dire NON au lettre ou caractère, j'aurai pas pensé lol. J'ai donc adapté mon code et je voulais avoir votre avis. Voici mon code et qui fonctionne correctement, la partie clear me permettre d'éviter toute saisie de caractère evitant ainsi les beugs. Dites moi si la façon de faire est mauvaise. Je me suis inspiré du site : [ Lien ]Private Sub TextBox1_TextChanged(ByVal sender As System.Object, ByVal e As System.EventArgs) Handles TextBox1.TextChangedIfNot IsNumeric(TextBox1.Text) ThenTextBox1.Clear() ' MsgBox("Veuillez entrer un nombre !") beug l'affiche une seconde fois au second clik sur OKEndIfEndSub Bonne soirée
|
|
jeudi 2 juillet 2009 à 01:41:28 |
Re : textbox nombre

PCPT
|
Réponse acceptée !
ta méthode n'est pas bonne non : *tu testes toute la zone à chaque pression, alors que logiquement, tu as déjà "presque tout testé" à la pression précédente *si l'utilisateur fait une simple faute de frappe? 123465789g arrivé au g, tout sera vidé
tu as pris un exemple VB6 alors que tu es en VB.NET
je viens de traduire le lien de tout à l'heure
copie le code ci-dessous dans un module (projet > ajouter un module) que tu nommeras "modNumericBox", et applique l'exemple indiqué en section "remarques"
' TEXTBOX NUMERIQUE SEULEMENT ' http://www.codyx.org/snippet_textbox-numerique-seulement_53.aspx#2382 ' Posté par [ PCPT ] le 02/07/2009
Module modNumericBox Private Const ES_NUMBER As Integer = &H2000 Private Const GWL_STYLE As Integer = -16 <System.Runtime.InteropServices.DllImportAttribute("user32.dll", SetLastError:=True)> _ Private Function GetWindowLong(ByVal hwnd As IntPtr, ByVal nIndex As Integer) As Integer End Function <System.Runtime.InteropServices.DllImportAttribute("user32.dll", SetLastError:=True)> _ Private Function SetWindowLong(ByVal hwnd As IntPtr, ByVal nIndex As Integer, ByVal dwNewLong As Integer) As Integer End Function
Public Sub SetTextBoxNum(ByRef Obj As Object) If (TypeOf Obj Is System.Windows.Forms.TextBox) Then SetWindowLong(Obj.Handle, GWL_STYLE, GetWindowLong(Obj.Handle, GWL_STYLE) Or ES_NUMBER) End If End Sub End Module '---------------------------------------------------------------- 'Remarques : 'dans le form_load : 'modNumericBox.SetTextBoxNum(TextBox1) 'modNumericBox.SetTextBoxNum(TextBox2) ' 'selon les paramètres de votre projet et la version de VS, lors de la saisie d'une valeur non numérique, une popup (tooltip) exclamation apparaitra voici un aperçu du résultat depuis VS2008

++
|
|
jeudi 2 juillet 2009 à 19:31:27 |
Re : textbox nombre

Sunnydelight
|
Alors j'ai fais comme tu m'a expliqué et sa tourne comme sur des roulettes! Je suppose que le code dans le module faut pas chercher à trop comprendre toutes les lignes car la j'ai ren appris de ce genre pour le moment?
Il y a encorre un beug, quand l'utilisateur ne tape rien et fait entrée mais c'est un autre problème, je me débrouillerai.
Merci pour l'aide.
|
|
jeudi 2 juillet 2009 à 19:42:14 |
Re : textbox nombre

PCPT
|
(pense à valider la ou les bonnes réponses si le problème est résolu) " Je suppose que le code dans le module faut pas chercher à trop comprendre " bin à part ce code, je ne vois pas quel autre code tu pourrais avoir envie de comprendre dans ce cas :) ....
une textbox est une fenêtre, avec un style c'est windows qui le gère par chance, windows gère plusieurs styles on lui demande donc juste d'ajouter à la textbox le message enpêchant la saisie autre que numérique, définie par la constante ES_NUMBER demande si c'est pas clair
" quand l'utilisateur ne tape rien et fait entrée " à toi de vérifier que les zones ne sont pas vides, lors du _click (ou du _keypress enter)
if (TextBox1.TextLength>0) andalso (TextBox2.TextLength>0) then TONCODE endif
++
|
|
vendredi 3 juillet 2009 à 11:42:31 |
Re : textbox nombre

Sunnydelight
|
Tu plaisantes quand tu dit c'est le seul code à comprendre ? lol . Comme je disais je débute et pour le moment il y a pas mal de terme et d'expression que je ne connais pas comme par exemple :
Private Const ES_NUMBER As Integer = &H2000 Private Const GWL_STYLE As Integer = -16
ou
<System.Runtime.InteropServices.DllImportAttribute("user32.dll", SetLastError:=True)> _
Les valeurs attribués, l'utilisation de certaine nomination "DLLImportAttribute" et pas mal de partie. Je suppose que cela viendra avec le temps du moin gespere, la le livre pour les nuls m'a beaucoup aidé mais il ne parle pas de ce genre de problème ou de manière de l'écrire.
Je pense me diriger vers le livre visual basic.net étape par étape, sa l'air d'etre un livre assez complet.
Merci en tout cas pour votre aide.
|
|
Cette discussion est classée dans : bouton, textbox, programme, nombre, vient
Répondre à ce message
Sujets en rapport avec ce message
Limiter nombre de charactere saisie textbox via bouton [ par olobo ]
Bonjour!Voila j'ai un petit soucis j'aimerais limiter la saisie dans une TextBox a 4 charatère la commande est donc TxtBox.MaxLength = 4 Cependant ce
affichage textbox [ par titil64 ]
bonjour a tous alors je vous explique mon truc je travaille sous vba excel j'ai deux userformdans la premiere 20 texbox20label un bouton de commande "
Enregistrement dans un textbox - VB 2008 [ par ggdavidgg ]
Bonjour à tous ! J'ai créé un programme et une des parties de ce programme me pose un problème. Quand l'utilisateur cliquerait sur un bouton, cela pro
[déplacé VB.NET -> CPP] lancer un exécutable par un bouton en c++ [ par nimont010 ]
salutje suis face a un petit problèmeje veux lancer un programme a partir un d'autre programme par un click sur un bouton et le travail c'est fais en
Option Boutton / bouton option [ par psgman25 ]
Salut,Tout d'abord je vous éxplique ma situation Je suis en stage et je dois crée un mini programme pour facilité des calculs...J'utilise un PC avec W
Affecter a des textbox des valeur par hasar!! [ par mond14 ]
Salut,svp je fait un programme en vb.net2008 et j'ai besoin de votre aide.par-exemple on un 3 textbox et un bouton et je veux que si on clic sur ce b
Equation dans une TEXTBOX [ par DESMOULIN ]
J'ai fait un programme pour résoudre une équation du second degré (par exemple) en VB6 .Mais celle-ci est dans le programme, ce qui m'oblige à arreter
Récupérer le nombre de caractères saisis dans un textbox et l'afficher dans un autre textbox [ par nasilo ]
Bonjour,J'ai crée userform et limité le nombre de caractères saisis dans un textbox avec maxlenght. Je ne trouve pas le code qui me permettrait de réc
VB.NET [ par HELLOKITTYYY ]
Je travaille sur vb.Net. J'ai deux pages asp, l'une contient un textbox et un bouton, et la deuxième contient un textbox. Quel code vb je dois mettre
Livres en rapport
|
Derniers Blogs
L'INTERFACE NATURELLE DE WINDOWS PHONE 7 SERIESL'INTERFACE NATURELLE DE WINDOWS PHONE 7 SERIES par odewit
La tendance est aux interfaces naturelles (NUI), et le keynote de Bill Buxton au MIX l'a bien souligné.
La charte graphique et ergonomique de Windows Phone 7 a donc été entièrement repensée en vue d'obtenir un maximum d'efficacité sur ce point. En re...
Cliquez pour lire la suite de l'article par odewit COMMENT MAPPER UNE VUE SQL SUR UNE COLLECTION DE COMPLEX TYPE?COMMENT MAPPER UNE VUE SQL SUR UNE COLLECTION DE COMPLEX TYPE? par Matthieu MEZIL
Avec EF, les vues doivent être mappées sur des entity types. Le problème c'est que les entity types doivent avoir une clé. Avec EF, nous avons les complex type qui n'ont pas de clé mais les vues ne peuvent pas être mappées dessus. Avec EF4, il est possibl...
Cliquez pour lire la suite de l'article par Matthieu MEZIL [WF4] UN BINDING ACTIVITY/ACTIVITYDESIGNER QUI PASSE MAL?[WF4] UN BINDING ACTIVITY/ACTIVITYDESIGNER QUI PASSE MAL? par JeremyJeanson
Certain d'entre vous on peut être vécu cette situation embarrassante après quelques temps passer avec WF4 : Au début avec mon " ActivityDesigner" , tout allait bien. Et puis un jour j'ai au des problèmes de " Binding" . Alors nous sommes allé sur le site ...
Cliquez pour lire la suite de l'article par JeremyJeanson
Logiciels
Academy System (10.9.4.0)ACADEMY SYSTEM (10.9.4.0)Logiciel de gestion des établissements.
- élèves/étudiants (inscription, dossier, absence...)
-... Cliquez pour télécharger Academy System Xilisoft Convertisseur Vidéo Ultimate (5.1.39.0305)XILISOFT CONVERTISSEUR VIDéO ULTIMATE (5.1.39.0305)Xilisoft Convertisseur Vidéo Ultimate est un outil puissant de conversion vidéo, facile à utilise... Cliquez pour télécharger Xilisoft Convertisseur Vidéo Ultimate Xilisoft DVD Ripper Ultimate (5.0.64.0304)XILISOFT DVD RIPPER ULTIMATE (5.0.64.0304)Xilisoft DVD Ripper Ultimate est un logiciel excellent pour copier et convertir DVD vers presque ... Cliquez pour télécharger Xilisoft DVD Ripper Ultimate Rigs of Rods (63.3)RIGS OF RODS (63.3)c'est un jeu de multi-simulation camions,autobus voitures, avions, bateaux, hélicoptère avec défo... Cliquez pour télécharger Rigs of Rods
|