SCROLLER DIGITAL AVEC CAPOT EN VERRE + REFLET. FAÇON WINAMP

Messages postés
13298
Date d'inscription
lundi 13 décembre 2004
Statut
Modérateur
Dernière intervention
3 février 2018
- - Dernière réponse : WariorProg
Messages postés
18
Date d'inscription
dimanche 9 mai 2004
Statut
Membre
Dernière intervention
15 décembre 2013
- 10 juil. 2009 à 16:44
Cette discussion concerne un article du site. Pour la consulter dans son contexte d'origine, cliquez sur le lien ci-dessous.

https://codes-sources.commentcamarche.net/source/43147-scroller-digital-avec-capot-en-verre-reflet-facon-winamp

WariorProg
Messages postés
18
Date d'inscription
dimanche 9 mai 2004
Statut
Membre
Dernière intervention
15 décembre 2013
-
je n'ai pas encore constaté ce probleme, alors je te remercie pour ta participation et je vais me pencher dessus, promis. si j'ai bien compris. Si on affiche un petit texte apres un grand, l'ocx ne scroll plus et se fige dans l'etat precedent. Je pense savoir d'ou viens le probleme alors dans la propriété Text du usercontrol, ajoute cette ligne:
If Valeur <> vNewValue Then Decallage = 0

juste dessous les 3 declaration Dim et ton probleme serat resolu.


Public Property Let Text(ByVal vNewValue As String)
Dim i As Integer
Dim Caractere As String
Dim CaractereNum As Integer

If Valeur <> vNewValue Then Decallage = 0

Valeur = vNewValue
RetVal = BitBlt(DcFond, 0, 0, PicFond.Width, PicFond.Height, PicFond.hdc, 0, 0, vbSrcCopy)

For i = 1 To (Len(Valeur))
CaractereNum = (Asc(Mid(Text, i, 1))) - 31
If CaractereNum -32 Then CaractereNum 32
Call DrawCaractere(CaractereNum - 1, i - 1, Decallage)
Next i
Call MakeReflet(PicReflet, DcFond)
RetVal = BitBlt(UserControl.hdc, 0, 0, PicFond.Width, PicFond.Height, DcFond, 0, 0, vbSrcCopy)

End Property
nono7380
Messages postés
11
Date d'inscription
samedi 25 avril 2009
Statut
Membre
Dernière intervention
16 octobre 2010
-
Excellent!!
Mais par contre, j'utilise ton code pour afficher l'état d'un programme, et je me heutre à un petit hic.
> J'affiche un grand texte dans le scroller, ce qui fait que lui est obliger de faire défiller le texte de dr à ga et vice-versa.
Après je met un texte plus court, et le scroller ne revient pas au début mais reste callé à la position précédente, ce qui fait que le début du nouveau texte est non affiché...
bbcluny
Messages postés
66
Date d'inscription
mardi 25 mars 2003
Statut
Membre
Dernière intervention
29 septembre 2008
-
Salut,
peut on avoir une aide sur la Function MakeReflet ?
Merci
WariorProg
Messages postés
18
Date d'inscription
dimanche 9 mai 2004
Statut
Membre
Dernière intervention
15 décembre 2013
-
Merci pour toutes ces critiques pertinentes. Il est vrai qu'au départ, ce prog n'était pas destiné à être diffusé sur codes-Sources. Je l'ai fait en reprenant un ancien projet et en le modifiant pour en faire ce dont j'avait besoins. J'en tire une grande leçon : Rien ne sert de courir, il faut partir « à Zéro ». (Bien sur pour de petits projet comme celui-ci). Promis, je ferais une mise au propre des que possible.
Merci encore.
Bonne Prog.

WariorProg
PCPT
Messages postés
13298
Date d'inscription
lundi 13 décembre 2004
Statut
Modérateur
Dernière intervention
3 février 2018
28 -
voir également à ne pas mettre certaines variables publiques
et ne pas lancer le scroll dans l'init

revois également ton propbag qui ici ne conserve pas les params (pas appelé/utilisé)
++