Explication code

Messages postés
17
Date d'inscription
lundi 28 mars 2011
Statut
Membre
Dernière intervention
4 octobre 2011
- - Dernière réponse : Tre3sh
Messages postés
17
Date d'inscription
lundi 28 mars 2011
Statut
Membre
Dernière intervention
4 octobre 2011
- 7 juin 2011 à 18:46
Bonjour,

Je débute en VB. Pourriez-vous m'aider à comprendre ces quelques lignes de code ?

Private Sub bande_Timer()
pour(0).Caption = Val(bnd.Width / 6255 * 100)
If bnd.Width > 6255 Then bnd.Width = 6240
bnd.Width = bnd.Width + 40
If pour(0).Caption = 100 Then frmcharg.term
End Sub
Private Sub ch1_Timer()
If ch.Caption "Chargement...." Then ch.Caption "Chargement"
ch.Caption = ch.Caption & "."
End Sub


Merci d'avance
Afficher la suite 

13 réponses

Messages postés
49
Date d'inscription
mardi 29 avril 2003
Statut
Membre
Dernière intervention
22 mai 2012
1
0
Merci
Salut...

Pourrais tu donner plus d'infos ?
Ou sont les déclaration de
pour()
frmCharg
bande
ch1

Quand le timer band s'active, on calcul la taille de bnd.
Si la taille de bnd est égale à 6255 on lance la fonction frmcharg.term

Quand le timer ch1 s'active, on modifie le libellé du controle ch...

Qu'attends tu d'autre ?

A+
Sbt
Commenter la réponse de cs_Sbt
Messages postés
781
Date d'inscription
lundi 22 janvier 2007
Statut
Membre
Dernière intervention
30 octobre 2013
3
0
Merci
Apparemment il y a plusieurs objet(label je pense) indexé sous le non pour.

Cas de bande_Timer()
--------------------
Tout le x milième de seconde on va dans l'objet Timer appelé bande.
En afficher dans le premier objet Pour (l'indexe commence a 0) la largeur de la form bnd (bnd.Width) divisée par 6255 * 100.
Note :La fonction val() n'est pas utile. La fonction val serre à convertir un string on un entier (int ou long je c plus). Comme bnd.Width ne retourne pas de string (si je me souvien bien) la fonction val n'est donc pas utile.

Si la form bnd.Width et > 6255
On change réduit sa taille à 6240
Si non on ne fait riens

On augmente la largeur de la form bnd de 40 par bnd.Width = bnd.Width + 40

Si le calcule afficher de le pour(0) (pour(0).Caption Val(bnd.Width / 6255 * 100) ) 100
On appelle la fonction term qui est dans la form frmcharg.
Si non on ne fait riens

Cas de ch1_Timer()
------------------
Tout le x milième de seconde on va dans l'objet Timer appelé ch1_Timer.

Si le l'objet ch (je pense a un label) affiche "Chargement...." (ch.Caption = "Chargement....")
alors on change l’affichage de ch par "Chargement" (ch.Caption = "Chargement")
si non on ne fait riens

Ensuite en concatène un "." a l'affichage de ch (ch.Caption = ch.Caption & "." )

En résumé
---------
Je pense que tout ce qui est fais dans le timer bande sert à dimensionné la ou les fenêtre au lancement de l'application et tout ce qui est fait dans le timer ch1 et un chenillard destiné à faire patienté l’utilisateur.
Commenter la réponse de 4u4me4us
Messages postés
17
Date d'inscription
lundi 28 mars 2011
Statut
Membre
Dernière intervention
4 octobre 2011
0
Merci
C'est issu de ce projet.

J'essaie d'apprendre le VB en m'imprégnant des lignes de code, mais j'ai du mal à comprendre ce que représentent les valeurs numériques indiquées ci-dessus.
Pourquoi diviser la largeur du contrôle bnd par 6255 ? Même chose après : pourquoi si la largeur du bnd est supérieure à 6255, je lui affecte 6240 ? C'est quoi 6255 ? C'est quoi tous ces nombres ?
Et la fonction Val, elle renvoie quoi ?

Merci de prendre le temps de me répondre
Commenter la réponse de Tre3sh
Messages postés
17
Date d'inscription
lundi 28 mars 2011
Statut
Membre
Dernière intervention
4 octobre 2011
0
Merci
4u4me4us > nos réponses se sont croisées. Merci de ton explication, c'est déjà un peu plus clair :D

Par contre, je ne sais toujours pas pourquoi on divise la largeur du contrôle bnd, ça reste obscur pour moi. J'ai toujours un problème avec tous ces nombres. En même temps, je n'ai, pour l'instant, jamais utilisé de contrôles Timer ou de formes ; je découvre. Et justement, j'aimerais comprendre pour pouvoir manipuler à mon tour. J'ai cherché dans l'aide, mais ça ne m'a pas été d'un grand secours.
Commenter la réponse de Tre3sh
Messages postés
14008
Date d'inscription
samedi 29 décembre 2001
Statut
Modérateur
Dernière intervention
28 août 2015
61
0
Merci
Salut

Ça ressemble à du bidouillage pour afficher un pourcentage d'avancement lors d'un chargement.
C'est de la cosmétique, ça n'a pas grand intérêt, programmaticalement parlant.
6255 est la largeur en Twips d'une barre ou picture.

pour(0) (comme "pourcent" ?) semble être un Label sensé afficher l'évolution.

Vala
Jack, MVP VB
NB : Je ne répondrai pas aux messages privés

Le savoir est la seule matière qui s'accroit quand on la partage (Socrate)
Commenter la réponse de cs_Jack
Messages postés
17
Date d'inscription
lundi 28 mars 2011
Statut
Membre
Dernière intervention
4 octobre 2011
0
Merci
jack > "twip"... voilà une unité que je ne connaissais pas encore :D
Merci pour l'information en tout cas.

Et oui pour(0) est un Label qui change de valeur au fur et à mesure que le formulaire se charge (de 0 à 100). Il représente le pourcentage.
Commenter la réponse de Tre3sh
Messages postés
18039
Date d'inscription
lundi 7 décembre 2009
Statut
Modérateur
Dernière intervention
11 avril 2018
214
0
Merci
Bonjour,
J'essaie d'apprendre le VB en m'imprégnant des lignes de code

voilà bien, à mon sens, une démarche qui n'apporte en général que presque rien.
Il y en a une autre, mille fois plus saine : s'imprégner de VB en apprenant VB, pas à pas . Je n'en ai jamais utilisé de'autres, en ce qui me concerne


____________________
Vous aimez Codes-Sources ? Il vous aide ? Cliquez ici pour l'aider à continuer
Cliquer sur "Réponse acceptée" en bas d'une solution adéquate est
Commenter la réponse de ucfoutu
Messages postés
18039
Date d'inscription
lundi 7 décembre 2009
Statut
Modérateur
Dernière intervention
11 avril 2018
214
0
Merci
Quant à ce que je lis plus haut, à savoir :
Apparemment il y a plusieurs objet(label je pense) indexé sous le non pour.

Tu parais avoir une boule de cristal, 4u4me4us !
Tu as probablement raison, mais rien ne permet de l'affirmer !
Tiens ! imagine un tabeau dimensionné d'objets, par exemple (et sans groupe indexé) ! M'étonnerait, mais pourquoi pas, hein ?
Et ce n'est pas tout.
La démarche consistant à savoir ce qu'il pourrait y avoir derrière un code est un peu similaire à celle d'un médecin qui, confronté à l'ordonnance établie par un confère, tenterait de déterminer, AVEC PRECISION, le cas traité ! C'est loin d'être raisonnable !!!

____________________
Vous aimez Codes-Sources ? Il vous aide ? Cliquez ici pour l'aider à continuer
Cliquer sur "Réponse acceptée" en bas d'une solution adéquate est
Commenter la réponse de ucfoutu
Messages postés
17
Date d'inscription
lundi 28 mars 2011
Statut
Membre
Dernière intervention
4 octobre 2011
0
Merci
ucfoutu > J'ai appris les bases du VB dans un bouquin. Mais je n'ai pas fait le tour de tous les contrôles par exemple, c'était juste les bases. Du coup, j'essaie de partir de codes source (pas le forum... enfin si, mais pas seulement :D) pour me perfectionner. Je récupère des lignes de code de projets qui m'intéressent et j'en étudie le fonctionnement. On retient mieux ce que l'on a compris non ?

Question subsidiaire, qui n'a rien à voir avec le VB : comment on quote sur ce forum ?
Commenter la réponse de Tre3sh
Messages postés
18039
Date d'inscription
lundi 7 décembre 2009
Statut
Modérateur
Dernière intervention
11 avril 2018
214
0
Merci
J'ai appris les bases du VB dans un bouquin

et moi, sans bouquin ni accès à internet (à mon époque) ===>> juste l'aide VB
Question subsidiaire, qui n'a rien à voir avec le VB : comment on quote sur ce forum ?

promène ta souris sur les icônes de la barre d'outils de la zone d'édition et lis les infobulles
____________________
Vous aimez Codes-Sources ? Il vous aide ? Cliquez ici pour l'aider à continuer
Cliquer sur "Réponse acceptée" en bas d'une solution adéquate est
Commenter la réponse de ucfoutu
Messages postés
17
Date d'inscription
lundi 28 mars 2011
Statut
Membre
Dernière intervention
4 octobre 2011
0
Merci
promène ta souris sur les icônes de la barre d'outils de la zone d'édition et lis les infobulles

Y'a pas d'autre moyen que de copier-coller le message entre des balises <quote> ?
Commenter la réponse de Tre3sh
Messages postés
18039
Date d'inscription
lundi 7 décembre 2009
Statut
Modérateur
Dernière intervention
11 avril 2018
214
0
Merci
- copier-coller le texte
- le sélectionner
- cliquer sur la balise

très fatigant, hein ?
Je commence à comprendre/deviner tes goûts pour l'effort (excuse-moi)


____________________
Vous aimez Codes-Sources ? Il vous aide ? Cliquez ici pour l'aider à continuer
Cliquer sur "Réponse acceptée" en bas d'une solution adéquate est
Commenter la réponse de ucfoutu
Messages postés
17
Date d'inscription
lundi 28 mars 2011
Statut
Membre
Dernière intervention
4 octobre 2011
0
Merci
Rien à voir avec l'effort. C'est juste que dans d'autres forums, il existe deux icones différents pour la réponse et la citation :o

Si ça t'ennuie tant que ça, t'es pas obligé de me répondre hein.
Commenter la réponse de Tre3sh