truc tout con [VB6] - Programmation
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
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
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.
Marsh Posté le 18-04-2001 à 14:27:01
bien essayé, mais ça me met erreur de type.
merci kand même
helppp please
Marsh Posté le 18-04-2001 à 14:27:57
alors Tom on en chie ???
je t'avais prévenu ...
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 ...
Marsh Posté le 18-04-2001 à 14:30:46
Merciiiiiiii
ça marche !!
dis moi, on se connait au fait???
encore merci
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
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 ...
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) + ... ???
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 ...
Marsh Posté le 18-04-2001 à 16:39:00
Fast rewind ...
J'ai écris une connerie ...
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é)
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...
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 ...
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 )