CONNEXION
  • RetourJeux
    • Sorties
    • Hit Parade
    • Les + populaires
    • Les + attendus
    • Soluces
    • Tous les Jeux
    • Gaming
  • RetourActu Gaming
    • News
    • Astuces
    • Tests
    • Previews
    • Toute l'actu gaming
  • RetourBons plans
    • Bons plans
    • Bons plans Smartphone
    • Bons plans Hardware
    • Bons plans Image et Son
    • Bons plans Amazon
    • Bons plans Cdiscount
    • Bons plans Decathlon
    • Bons plans Fnac
    • Tous les Bons plans
  • RetourJVTech
    • Actus High-Tech
    • Intelligence Artificielle
    • Smartphones
    • Mobilité urbaine
    • Hardware
    • Image et son
    • Tutoriels
    • Tests produits High-Tech
    • Guides d'achat High-Tech
    • JVTech
  • RetourCulture
    • Actus Culture
    • Culture
  • RetourVidéos
    • A la une
    • Gaming Live
    • Vidéos Tests
    • Vidéos Previews
    • Gameplay
    • Trailers
    • Chroniques
    • Replay Web TV
    • Toutes les vidéos
  • RetourForums
    • Hardware PC
    • PS5
    • Switch 2
    • Xbox Series
    • Switch
    • Pokemon pocket
    • FC 25 Ultimate Team
    • League of Legends
    • Tous les Forums
  • PC
  • PS5
  • Xbox Series
  • Switch 2
  • PS4
  • One
  • Switch
  • iOS
  • Android
  • MMO
  • RPG
  • FPS
En ce moment Genshin Impact Valhalla Breath of the wild Animal Crossing GTA 5 Red dead 2
Liste des sujets

[VB.NET] Problème fonction

Hah
Hah
Niveau 10
14 août 2010 à 02:02:25

Salut ) tous, j'ai un petit soucis avec mon code, et j'aurais besoin de vous ^^ La fonction convertion est censé modifier les Textbox dans le cas où rien ne serait marqué dedans, et y mettre un "0" pour effectuer un calcul.

Voici la bête :noel:

MonTableau(0) = Me.TextBox1.Text
...
MonTableau(48) = Me.TextBox49.Text
Conversion()

Sub Conversion()
For i As Integer = 0 To 48
If MonTableau(i) Is Nothing Then
MonTableau(i) = 0
End If
Next
End Sub

PS : si quelqu'un pouvait me rappeler le nom du site où on peut poster ses codes, ce serait cool x)

godrik
godrik
Niveau 30
14 août 2010 à 02:03:35

http://pastebin.com/

Hah
Hah
Niveau 10
14 août 2010 à 02:03:49

Problème résolu 10 seconde après avoir poster le message, suffisait de remplacer Is Nothing par = "", chuis vraiment un boulet :rire:

Hah
Hah
Niveau 10
14 août 2010 à 02:04:13

PS : merci godrik, quel vitesse :)

dnob700
dnob700
Niveau 10
14 août 2010 à 13:29:18

Oui, Nothing ce sont les variables qui n'ont pas été initialisé. Ce n'est pas la même chose qu'une variable qui a été initialisé à rien du tout.

Tu devrais peut-être construire tes textbox autrement ou utiliser un autre contrôle. Pourquoi en as-tu autant ? Est-ce qu'une contrôle de liste ou une textbox multi-ligne ne feras pas plus l'affaire si elles se suivent les unes les autres ?

Hah
Hah
Niveau 10
14 août 2010 à 16:17:24

En fait, le programme est pour mes parents, pour faire les comptes (ils ont un commerce) donc je met 1 label pour par exemple "Piece de 2€", un texte box pour savoir combien il y en a et un autre label pour donner le totale (si ya 5 pièce de 2, ça écrit 10 en face).

Ca va, comme ya 8 pièce, mais par contre, j'en ai chié avec les 49 tickets restau possible :hum: 98 label et 49 textbox dans un panel, chiant a faire, surtout que je l'ai fait proprement, donc j'ai mis la position a 13;x+23 (pour qu'il soit écarté de 23) et le faire 49 fois, relou x)

Sinon, j'ai fait une modification pour la fonction vérification, s'il n'y a rien, ça écrit 0 à la place, et bizarrement ça fonctionne pour les tickets mais pas pour les pièces ni pour les billets :x

Code qui marche (et qui m'a saoulé x) ):
http://pastebin.com/ZvHfepyV

Codes qui foirent :
Billets :
http://pastebin.com/z7SD12Yi
Pièces :
http://pastebin.com/eaeVnEdE

dnob700
dnob700
Niveau 10
14 août 2010 à 16:35:46

Tu aurais pu générer tes textbox en programmant et les stocker tous dans un tableau (surtout sur leurs positions est "logique") comme ça tu aurais pu faire une boucle plutôt qu'une longue énumération. Ou peut-être que le text box n'est quand même pas le contrôle le plus adapté pour faire ce genre de chose. Enfin ce point n'est pas très important tu es en train d'apprendre te verras bien au fur et à mesure quelles sont les bonnes méthodes.

Pour ton problème, la cause ne me parait pas évidente (même si elle l'est probablement, comme ça, je ne vois pas). Ce que je te conseille, c'est de commencer à te servir du débogueur. C'est un outils très puissant. Par exemple tu devrais placer un point d'arrêt au niveau de la ligne 40 du fichier des billets (le if tableau = "") puis exécuter le programme en débogage, lancer la vérification (je suppose que tu as un bouton pour ça). Là le programme va s'arrêter sur cette ligne et tu pourras avancer dans le programme ligne par ligne tout en regardant la valeur des variables.

C'est terriblement pratique et efficace pour corriger les programmes (d'ailleurs c'est un argument en faveur de .NET qui a l'un des débogueurs les plus performants pour ce genre de chose).

Hah
Hah
Niveau 10
14 août 2010 à 16:43:35

Peut-être qu'on pourrait en parler sur msn ? Tu as l'air de t'y connaitre =')

Hah
Hah
Niveau 10
14 août 2010 à 17:11:57

Problème résolu, en utilisant le débugger, j'ai vu que même quand Tableau(0) = 0 au lieu de "", ça ne modifiait pas la valeur des textbox. Donc je me suis demandé si l'ordre d'assignation des variables était bon.

2 manière de résoudre ce problème :
Soit remplacer les textbox par le Tableau(0) soit initialiser le tableau à 0 pour chaque valeur et écrie Textbox0 = Tableau(0) au lieu de Tableau(0) = Textbox0.

Comprendra qui pourra :noel:

Hah
Hah
Niveau 10
14 août 2010 à 17:13:04

2 manière de résoudre ce problème :
Soit remplacer les textbox0 par le Tableau(0) DANS LE CALCUL, soit initialiser le tableau à 0 pour chaque valeur et écrie Textbox0 = Tableau(0) au lieu de Tableau(0) = Textbox0.

Pas mal le triple post :o))

dnob700
dnob700
Niveau 10
14 août 2010 à 17:29:12

"# Peut-être qu'on pourrait en parler sur msn ? Tu as l'air de t'y connaitre =') "

Ah oui, mais non. Je n'ai pas du tout le temps de faire ce genre de chose par MSN (comme essentiellement n'importe qui sur ce forum). Venir lire ici et répondre quand je le peux (ce qui est assez régulier) me prend beaucoup moins de temps et ça permet à tout le monde de réfléchir plus tant à ses questions qu'à ses réponses.

Hah
Hah
Niveau 10
14 août 2010 à 17:54:11

Oki, en tout cas, merci pour ton aide =')

Sous forums
  • Aide à l'achat Mac
  • Création de Jeux
  • Linux
  • Création de sites web
  • Programmation
  • Internet
  • Steam Deck
  • Macintosh
  • Hardware
La vidéo du moment