begin process at 2010 02 10 14:21:37
  Trouver un code source :
 
dans
 
Accueil > Forum > 

VB.NET et VB 2005

 > 

Divers

 > 

Débutants

 > 

Comment utiliser TextBox1.Numeric = True ?


Derniers messages déposésPoser une question dans le forum ou lancer une discussion

Comment utiliser TextBox1.Numeric = True ?

vendredi 6 avril 2007 à 13:50:20 | Comment utiliser TextBox1.Numeric = True ?

Sipat

Bonjour,
Suite au forum
 http://www.vbfrance.com/infomsg_CALCUL-NUMERIQUE-AVEC-TEXBOX_915799.aspx
Comment on utilise cette fonction TextBox1.Numeric = True ?

Je l'ai trouvé dans l'aide mais je n'arrive pas à la faire fonctionner .
Ce que je veux faire c'est ce style d'opération:
Option strict on
((TextBox1.Text - TextBox2.Text) / TextBox3.Text) * 100
Je crois qu'il faut dire au TextBox que la saisie est numérique et non pas texte.

Private

Sub Page_Load(ByVal sender AsObject, ByVal e As EventArgs) HandlesMyBase.Load

Dim instance As TextBox

Dim value AsBoolean

value = instance.Numeric

instance.Numeric = value

TextBox1.Numeric = True

End Sub

J'ai erreur :
Erreur 1 'Numeric' n'est pas un membre de 'System.Windows.Forms.TextBox'. C:\Documents and Settings\Mes documents\Visual Studio 2005\Projects\WindowsApplication1\WindowsApplication1\Form1.vb 99 17 WindowsApplication1

Merci, bonne journée.

vendredi 6 avril 2007 à 14:01:23 | Re : Comment utiliser TextBox1.Numeric = True ?

Willi

Membre Club Administrateur CodeS-SourceS
Bonjour,
Le message d'erreur que tu obtiens est tout ce qu'il y a de normal. En effet la propriété Numeric existe mais sur les objets TextBox côté ASP.Net pour les applications sur périphériques mobiles.

Voir  [ Lien ]
 
++
vendredi 6 avril 2007 à 14:04:20 | Re : Comment utiliser TextBox1.Numeric = True ?

jmfmarques

Membre Club
J'ajoute que l'expression :
((TextBox1.Text - TextBox2.Text) / TextBox3.Text) * 100

me laisse un peu pantois !
Faire des opération d'addition et de soustraction ... et de divisons sur des valeurs de type "string" est assez étonnant, même si VB arrive à "deviner"
vendredi 6 avril 2007 à 17:48:32 | Re : Comment utiliser TextBox1.Numeric = True ?

casy

Membre Club
Quant à ton erreur, elle est normale.

TU essaye de lire ou d'écrire la propriété Numeric de "l'ojet" instance. Hors ton "objet" instance n'est créer nulle part (d'ou les ") ce n'est pas un objet existant.

Supprime le code présent dans le Page_Load et essaye avec ceci :

TextBox1.Numeric=True
TextBox2.Numeric=True
TextBox3.Numeric=True

Normalement ça doit suffire, tu n'as pas besoin du reste

---- Sevyc64  (alias Casy) ----
# LE PARTAGE EST NOTRE FORCE #
vendredi 6 avril 2007 à 20:01:01 | Re : Comment utiliser TextBox1.Numeric = True ?

fauve

Membre Club
Réponse acceptée !
Salut,



[Quote] :

Je l'ai trouvé dans l'aide mais je n'arrive pas à la faire fonctionner .
Ce que je veux faire c'est ce style d'opération:
Option strict on
((TextBox1.Text - TextBox2.Text) / TextBox3.Text) * 100
Je crois qu'il faut dire au TextBox que la saisie est numérique et non pas texte.

Si tu veux faire ce style d'opérations comme dans l'exemple que tu as utilisé ( voir [Quote] ), voici un petit exemple :

((CDec(TextBox1.Text) - CDec(TextBox2.Text)) / CDec(TextBox3.Text)) * 100

Tu peux ensuite stocker cà directement dans une variable :

Dim nombre As Decimal =
((CDec(TextBox1.Text) - CDec(TextBox2.Text)) / CDec(TextBox3.Text)) * 100

Ou alors le remettre dans une TextBox, comme ceci :

TextBox4.Text = CStr(
((CDec(TextBox1.Text) - CDec(TextBox2.Text)) / CDec(TextBox3.Text)) * 100)

ou

TextBox4.Text = (
((CDec(TextBox1.Text) - CDec(TextBox2.Text)) / CDec(TextBox3.Text)) * 100).ToString

ou encore

Dim nombre As Decimal = ((CDec(TextBox1.Text) - CDec(TextBox2.Text)) / CDec(TextBox3.Text)) * 100

TextBox4.Text = nombre.ToString                    ou                       TextBox4.Text = CStr(nombre)

---------------------------------------------------------------------
Ps 1 : Petites informations

CDec permet de convertir en Decimal
CStr permet de convertir en String
CInt permet de convertir en Integer

Pour plus d'infos, tu peux aller jeter un petit coup d'oeil à cette adresse : Cliques ici

Ps 2 : Si les nombres dans tes textbox sont plutôt des entiers que des nombres décimaux : utilises CInt au lieu de CDec

---------------------------------------------------------------------------------------------------------------------------
Si ce message a réglé ton problème >>>>>>> Accepter la réponse   
vendredi 6 avril 2007 à 20:51:06 | Re : Comment utiliser TextBox1.Numeric = True ?

Sipat

Bonsoir,
Merci fauve pour toutes c'est explications.
Actuellement j'ai

TextBox3.Text =

CStr((CDbl(TextBox2.Text) - CDbl(TextBox1.Text)) / CDbl(TextBox2.Text) * 100)
Je viens de m'aperçevoir que l'erreur c'est :
Quand j'écris dans TextBox1.Text  les autres TextBox on rien dedans donc il y a une ligne d'erreur et quand j'ecris après dans  TextBox2.Text il n'y a pas d'erreur puis qu'il peut calculer. Quand je fais le contraire j'écris dans TextBox2 il y a une erreur et j'écris a nouveau dans TextBox1 pas d'erreur.
Je gére l'erreur comme ça :

On

ErrorGoTo fin
TextBox3.Text = CStr((CDbl(TextBox2.Text) - CDbl(TextBox1.Text)) / CDbl(TextBox2.Text) * 100)fin:
Vous pensez que c'est comme ça qu'il faut faire pour gérer l'erreur ?
Pour le mode de calcul apparemment c'est comme ça.
Merci, bonne soirée.
vendredi 6 avril 2007 à 21:04:00 | Re : Comment utiliser TextBox1.Numeric = True ?

fauve

Membre Club
Réponse acceptée !
Salut,

il faut que tu gères si tes textbox contiennent quelque chose ou si elles sont vides. Pour cela, voici comment faire :

If TextBox1.Text <> "" And IsNumeric(TextBox1.Text) = True And TextBox2.Text <> "" And IsNumeric(TextBox2)= True Then
           TextBox3.Text = CStr((CDbl(TextBox2.Text) - CDbl(TextBox1.Text)) / CDbl(TextBox2.Text) * 100)
End If

' Pour qu'il calcule, il faut que TextBox1.Text contient une chaîne de caractères et que cette chaîne soit un nombre
'                        idem pour TextBox2.Text
' Sinon il ne calcule pas
'
' IsNumeric(TextBox1.Text) = True si TextBox1.Text contient un nombre (par exemple : 12    9,5    ...)
' IsNumeric(TextBox1.Text) = False si TextBox1.Text  ne contient pas un nombre (par exemple : azer     2xz3v     ...)

(Coloration syntaxique automatique par Kenji)

-----------------------------------------------------------------------------------------------------------
Si ce message a réglé ton problème >>>>>>> Accepter la réponse   
vendredi 6 avril 2007 à 21:45:14 | Re : Comment utiliser TextBox1.Numeric = True ?

Sipat

Bonsoir,
Oui ça fonctionne bien  sans

On ErrorGoTo fin
mais il reste encore une erreur quand j'efface retour arr là se reproduit la même erreur. 

If TextBox1.Text <> ""And IsNumeric(TextBox1.Text) = TrueAnd TextBox2.Text <> ""And IsNumeric(TextBox2) = TrueThen

TextBox3.Text =

CStr((CDbl(TextBox2.Text) - CDbl(TextBox1.Text)) / CDbl(TextBox2.Text) * 100)

TextBox10.Text =

CStr(CDbl(TextBox2.Text) - CDbl(TextBox1.Text))

EndIf

If TextBox1.Text <> ""And IsNumeric(TextBox1.Text) = TrueAnd TextBox5.Text <> ""And IsNumeric(TextBox5) = TrueThen

TextBox9.Text =

CStr(CDbl(TextBox5.Text) / CDbl(TextBox1.Text))

EndIf

Merci fauve Bonne soirée.
samedi 7 avril 2007 à 08:58:07 | Re : Comment utiliser TextBox1.Numeric = True ?

Sipat

Bonjour,
Je n'arrivais plus a faire ce que je voulais,  je  vous explique :

Private

Sub TextBox1_KeyPress(ByVal sender AsObject, ByVal e As System.Windows.Forms.KeyPressEventArgs) Handles TextBox1.KeyPress'remplacement du point par une virgule 
   If Asc(e.KeyChar) = 46 Then e.KeyChar = Chr(44) '","
'si c'est une virgule et qu'il y en a déja une dans le textbox, ou qu'elle est tappé en premier caractère, on annule la saisie 
   If Asc(e.KeyChar) = 44 And (CType(sender, TextBox).Text.IndexOf(",") > 0 OrCType(sender, TextBox).Text = "") Then e.Handled = True
'si le caractere n'est pas un chiffre, back ou une virgule, on annule 
   IfChar.IsDigit(e.KeyChar) = FalseAnd Asc(e.KeyChar) <> System.Windows.Forms.Keys.Back And Asc(e.KeyChar) <> 44 Then e.Handled = True
EndSub

Private

Sub TextBox1_KeyUp(ByVal sender AsObject, ByVal e As System.Windows.Forms.KeyEventArgs) Handles TextBox1.KeyUp
If TextBox1.Text <> "" = TrueAnd TextBox2.Text <> ""Then
   TextBox3.Text = CStr((CDbl(TextBox2.Text) - CDbl(TextBox1.Text)) / CDbl(TextBox2.Text) * 100)
   TextBox10.Text =
CStr(CDbl(TextBox2.Text) - CDbl(TextBox1.Text))
EndIf
 If TextBox1.Text <> "" = TrueAnd TextBox5.Text <> ""Then
   TextBox9.Text =
CStr(CDbl(TextBox5.Text) / CDbl(TextBox1.Text))
EndIf
' Pour qu'il calcule, il faut que TextBox1.Text contient une chaîne de caractères
' idem pour TextBox2.Text
' Sinon il ne calcule pas'
'''On Error GoTo fin
''TextBox3.Text = CStr((CDbl(TextBox2.Text) - CDbl(TextBox1.Text)) / CDbl(TextBox2.Text) * 100)
''TextBox10.Text = CStr(CDbl(TextBox2.Text) - CDbl(TextBox1.Text))
''TextBox9.Text = CStr(CDbl(TextBox5.Text) / CDbl(TextBox1.Text))
''fin:
EndSub

PrivateSub TextBox1_TextChanged(ByVal sender As System.Object, ByVal e As System.EventArgs) Handles TextBox1.TextChanged
   If TextBox1.Text = ""Then TextBox3.Text = "" : TextBox10.Text = "" : TextBox8.Text = "" : TextBox7.Text = ""
'If Len(TextBox1.Text) < 1 ThenExitSub
'TextBox1.Text = Trim(TextBox1.Text) 'enleve les espaces droite et gauche Chr(44)
'If Mid(TextBox1.Text, 1, 1) = "," Then TextBox1.Text = ""
EndSub
Voilà j'ai enlevé IsNumeric parceque je n'arrivé plus à faire dans TextBox1 le calcule au fur et a mesure que j'inscrivé des nombres et je pense que ça devais faire double emploi avec l'evènement KeyPress.
Qu'est ce que vous en pensez ?c'est bien comme ça ?
Merci ,bonne journée


Cette discussion est classée dans : textbox, text, true, textbox1, numeric


Répondre à ce message

Sujets en rapport avec ce message

Comment faire pour savoir le width d'un textbox1.text ??? [ par PILOTEX ] Voilà je voudrais savoir comment on fait pour savoir le width d'un textbox1.text. Pour mieux expliquer, il faut que je sache la longueur du text situe Pourquoi ca marche pas ?? [ par Fripouil ] Voila j ai deux textbox et un timerDans mon timer j' ai : If Textbox1.text > Textbox2.text thenlabel1.caption = "gagné"elseIf Textbox1.text label1.cap Affichage d'un controle par code vb.net [ par cybermax62 ] c con mais je comprend pas pkoi ça s'affiche pas.je veux créer un controle (textbox,datagrid) par code en non avec visual mais quand je lance, il ne s AFFICHAGE D'UN TEXTBOX [ par DHN93160 ] CHERS AMIS, J'AI UN TEXTBOX INTITULE TEXTBOX1 QUI CONTIENT "000001" J'AI CREE UN AUTRE TEXTBOX,TEXTBOX2 QUI REPREND LA VALEUR DE TEXTBOX1 AUGMENTE DE Text box, ajout de propriétés [ par nours87 ] Bonjour a tous,Désolé si je ne suis pas au bon endroit, je ne sais pas si ma question rentre bien dans ce thème.Voila j'utilise des textbox pour lire Modifier une chaine hexadécimal à l'aide d'un TextBox [ par nandofive ] Bonjour,Comment peut-on modifier une chaine hexadecimale d'un fichier à l'aide d'un TextBox.Pour lire une chaine hexadécimale j'utilise                Comment utiliser TextBox1.Numeric ? [ par Sipat ] Bonjour,Comment on utilise cette fonction ? Je l'ai trouvé dans l'aide mais je n'arrive pas à la faire fonctionner . Private Sub</ Word et VBA [ par Algo_Pano ] Bonjour a tous,Attendez la fin avant de me siffler...Je m'explique, j'ai un document word dans lequel j'ai ajouter des controles(textbox, list, etc..) quelle est l'écriture correcte de textbox(i).text= a ??? [ par fhano ] Bonjour, j'ai un problème de débutant! Je ne trouve pas l'écriture correcte d'un code simple. J'ai un fichier.txt avec des valeurs séparées par des vi remplir un tableau a l'aide de textbox de façon automatique [ par lvl ] Bonjour a tous. <?xml:namespace prefix = o ns = "urn:schemas-microsoft-com:of


Nos sponsors


Sondage...

Comparez les prix


HTC Hero

Entre 550€ et 550€

CalendriCode

Février 2010
LMMJVSD
1234567
891011121314
15161718192021
22232425262728

Consulter la suite du CalendriCode

 
Développement réalisé par Nicolas SOREL (Nix) avec l'aide de : Cyril DURAND et Emmanuel (EBArtSoft), Merci à Vincent pour ses précieux conseils.
CodeS-SourceS.com© Toute reproduction même partielle est interdite sauf accord écrit du Webmaster
CodeS-SourceS.com© est une marque déposée tous droits réservés

Google Coop CodeS-SourceS Google Coop CodeS-SourceS
Temps d'éxécution de la page : 0,562 sec (3)

Nous contacter | Annoncer sur CodeS-SourceS | Mentions légales