[VB6]truc tout con

truc tout con [VB6] - Programmation

Marsh Posté le 18-04-2001 à 13:20:20    

Voilà ce ke g écrit :
 
Texte_prix_total.Text = Texte_prix_mat.Text + Texte_prix_usinage.Text + Texte_prix_trait.Text
 
Je rentre 3 entiers, un dans chaque text box et j'aimerai dans un 4ème avoir le résultat de la somme des 3 autres.
mais ça ne marche pas, ça me met les chiffres les uns à la suite des autres .
ex : si je rentre 12    puis     5     puis   7 il me sort 1257 au lieu de 24.
merci :o) :eek2:

Reply

Marsh Posté le 18-04-2001 à 13:20:20   

Reply

Marsh Posté le 18-04-2001 à 13:32:26    

Ceci m'interresse car je n'y arrive pas non plus

Reply

Marsh Posté le 18-04-2001 à 13:48:57    

Explorateur d'objets:
 
Property Text As String
    Membre de VB.TextBox
    Renvoie ou définit le texte contenu dans le contrôle.
 
La propriété Text renvoie un string
Donc faut convertir

Reply

Marsh Posté le 18-04-2001 à 14:19:45    

je veux bien convertir alors, g déjà essayé mais je ne connais pas la fonction à utiliser

Reply

Marsh Posté le 18-04-2001 à 14:23:54    

le blème c'est qu'il n'y a pas vraiment de type en VB6 donc qd tu fais 12 + 5 et que ça viens d'un champ il concatène les deux strings.
 
Essaie de faire une opération du genre (12*1) + (5*1) pour le forcer à utiliser des nombres
 
Texte_prix_total.Text = (Texte_prix_mat.Text*1) + (Texte_prix_usinage.Text*1) + (Texte_prix_trait.Text*1)
 
si ça fait pas une erreure du type type mismatch ça devrait marcher.


---------------
Webmaster du site de l'Île-Saint-Denis : http://www.lile-saint-denis.fr
Reply

Marsh Posté le 18-04-2001 à 14:27:01    

bien essayé, mais ça me met erreur de type.
merci kand même :)  
 
 
 
helppp please :cry:

Reply

Marsh Posté le 18-04-2001 à 14:27:57    

alors Tom on en chie ???  
je t'avais prévenu ... :sarcastic:
 
utilise val(string) qui te renvoit le chiffre ...
 
Texte_prix_total = val(Texte_prix_mat) + val(Texte_prix_usinage) +val(Texte_prix_trait)  
 
méfie toi du "+" qui sert à concaténer des chaines ...
tu peux virer le .text qui est la valeur "par défaut" de l'objet text ...
 
bonne chance ...

Reply

Marsh Posté le 18-04-2001 à 14:30:46    

Merciiiiiiii
ça marche !!
 
dis moi, on se connait au fait???
 
encore merci :hap:

Reply

Marsh Posté le 18-04-2001 à 14:34:16    

Il parrait "qu'on" a fait un projet "ensembles" ...

Reply

Marsh Posté le 18-04-2001 à 14:36:29    

mdr ok!!
alors comment se passe ton stage??
 
en fait, moi g preske finit mon logiciel mais là j'avais juste une couille à ce nievau puis aussi au niveau de l'accès de base de données sous VB mais now c bon, je l'ai fait

Reply

Marsh Posté le 18-04-2001 à 14:36:29   

Reply

Marsh Posté le 18-04-2001 à 14:38:01    

J'oubliais (pour les puristes) il faudrait faire :
 
Texte_prix_total = format( val(Texte_prix_mat) + _
val(Texte_prix_usinage) +val(Texte_prix_trait))
 
pour reconvertir ton nombre en string ...

Reply

Marsh Posté le 18-04-2001 à 15:13:39    

oui mais avec des décimales, ça ne marchera plus !peut-être qu'avec listBox4 = Cdec(listBox1) + ... ???

Reply

Marsh Posté le 18-04-2001 à 16:31:44    

T'es sûr ???
Si si ...
 décimales ... exponentielles ... ca prend tout ... (il me semble ... enfin je crois ... à 99%)
meme s'il y a des caracteres !!!
 
val("J'ai 20 ans et 2 mois" ) te renvoit 202 ...

Reply

Marsh Posté le 18-04-2001 à 16:39:00    

Fast rewind ...
J'ai écris une connerie ... :o
202 c'est pour val("  20  2 du texte derriere" )
sinon
    val("  20  du texte 2  " ) => 20
    val(" du texte 20 2 " ) => 0
mais val("20.2" ) ou val("20 .  2" ) te renvoit 20.2, ca c'est pas une connerie. (val renvoit une valeur de type approprié)

Reply

Marsh Posté le 18-04-2001 à 16:50:23    

Val renvoi un variant avec un sous type numérique que VB évalue lors de la conversion
Pour des conversions plus typées y'a:
CInt, CLng, CDbl, CStr, etc...

Reply

Marsh Posté le 18-04-2001 à 17:05:03    

pendant qu'on est dans les conversions ...
g t pas arrivé à convertir un tableau d'integer en tableau de byte ( !!! le tableau garde la meme taille en nombre d'octets !!!)
ex : un tableau de 2 integer 10 , 20
devient un tableau de 4 bytes : 0,10,0,20 ...

Reply

Sujets relatifs:

Leave a Replay

Make sure you enter the(*)required information where indicate.HTML code is not allowed