Bonjour,
J'essaie de me faire un petit programme qui me permettrai de faire descendre une progressbar qui représente une quantité de liquide selon une heure défini par l'utilisateur.
Textbox1.text correspond à la contenance de base (exemple : 4000ml)
Textbox2.text correspond à la dose qui sera soustrait à l'heure souhaité (exemple : 200 ml)
Label99.text correspond au résultat
label78.text me permet de faire la boucle de soustraction à chaque fois que l'heure réel arrive à l'heure choisie par l'utilisateur
L'heure choisi par l'utilisateur est saisi dans le Textbox9.text pour les heures et le Textbox10.text pour les minutes
- J'active le timer pour récupéré mon heure
- Je récupère l'heure de l'utilisateur au bon format dans le label89.text
Code : Sélectionner tout - Visualiser dans une fenêtre à part
1
2
3
4 Private Sub RibbonForm1_Load(ByVal sender As System.Object, ByVal e As System.EventArgs) Handles MyBase.Load 'Démarrage de l'heure en temps réel Timer1.Enabled = True End Sub
- Je récupère et compare l'heure de l'ordi par rapport à l'heure utilisateur dans le Toolstrplabel4.text
Code : Sélectionner tout - Visualiser dans une fenêtre à part
1
2
3
4
5
6 Private Sub TextBox10_TextChanged(ByVal sender As System.Object, ByVal e As System.EventArgs) Handles TextBox10.TextChanged 'récupération de l'heure au bon format Label89.Text = TextBox9.Text + ":" + TextBox10.Text + ":00" End Sub
Je m'arrache les cheveux à essayer de comprendre pourquoi le calcul s’exécute mais me donne des résultats incohérent (exemple pour 4000ml de base avec 200ml de dosage, le résultat me donne 2000ml au lieu de 3800.
Code : Sélectionner tout - Visualiser dans une fenêtre à part
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25 Private Sub Timer1_Tick(ByVal sender As System.Object, ByVal e As System.EventArgs) Handles Timer1.Tick Timer1.Start() 'Affiche la date ToolStripLabel2.Text = Date.Now.ToString("dd-MM-yyyy") 'Affiche l'heure ToolStripLabel4.Text = TimeOfDay 'Résulat Pompe1 If Label89.Text = Toolstriplabel4.Text Then Label99.Text = Label78.Text - TextBox7.Text Label10.Text = Label99.Text + " ml" 'Calcul pourcentage Label112.Text = (100 * Val(Label99.Text)) / Val(TextBox1.Text) VerticalProgressBar1.Value = Label112.Text Label117.Text = Label112.Text + " %" Label78.Text = Label99.Text ' -> Quand j'ajoute cette ligne le calcul n'est plus cohérent End If End Sub
Ce qui est étrange c'est que si je n'utilise pas la nation de l'heure et que je place directement les calcul dans un événement Button_Click tout fonctionne à merveille. j'ai bien 200ml en moins à chaque clique sur le bouton...
Auriez-vous une idée ou une solution à mon problème je ne sais plus quoi faire
Merci à tous ceux qui pourront m'aider
Partager