Twitter iPhone pliant OnePlus 11 PS5 Disney+ Orange Livebox Windows 11

déplacement d'un controle image avec la méthode move

5 réponses
Avatar
marc.dufresne
bonjour à toutes et tous
je veux faire un écran de veille qui affiche toutes mes photos de
vacances.lorsque je veux faire des transitions d'image(.jpg) j'utilise un
controle image et la propriété move.
premièrement le déplacement n'est pas très fluide!
deuxièment si je fais apparaitre l'image dans le coin inférieur droit, que
je fait progresser la photo vers le coin supérieur gauche, ça va bien tant
que la largeur de la photo (largeur inférieure à la largeur totale de
l'écran et inférieure à la hauteur) donc quand le bord droit de la photo
passe le bord droit de l'écran et continue sa progression l'image saute
essayé ce code pour mieux voir avec une image plus haute que large
x et y sont les positions finales ducoin supérieur gauche de la photo


Sub inf_dr_sup_ga(vue As Image, ByVal x As Integer, ByVal y As Integer)



Dim L, H
Dim vit
vit = 50 'vitesse de déplacement

L = Screen.Width
H = Screen.Height
deltay = (H - y) / vit
deltax = (L - x) / vit

Do While L > x
vue.Move L, H
L = L - deltax
H = H - deltay
Loop
vue.Move x, y

End Sub



si quelqu'un à une explication ou une meilleur méthode pour déplacer des
images

merci d'avance

5 réponses

Avatar
TouTi
Pourquoi n'utilises-tu pas plutôt la commande "Paintpicture".

Tu n'auras pas de déplacement de contrôle et tu obtiendras plus d'effets de
transitions.

--
TouTI
Avatar
marc.dufresne
bonsoir
je viens d'essayé paintpicture , premièrement je crois que ça ne fonctionne
pas avec des .jpg
j'ai donc essayé avec un .bmp mais bizarement rien ne s'affiche sur ma form
j'ai repri un exemple de l'aide mais rien y fait

Private Sub Form_Load()
Dim x As Picture
Set x = LoadPicture("G:Mes DocumentsMes images3dgmove.cur")
Picture1.Picture = x
For i = 0 To 10
For j = 0 To 10
Form1.PaintPicture Picture1.Picture, j * Picture1.Width, i *
Picture1.Height, Picture1.Width, -Picture1.Height
Next j, i


"TouTi" <gelapplication[nospam]@tiscali.fr> a écrit dans le message de news:
441e9e26$0$21272$
Pourquoi n'utilises-tu pas plutôt la commande "Paintpicture".

Tu n'auras pas de déplacement de contrôle et tu obtiendras plus d'effets
de transitions.

--
TouTI



Avatar
TouTi
Marc
je viens d'essayé paintpicture , premièrement je crois que ça ne
fonctionne pas avec des .jpg


Ca fonctionne avec tous les types d'images les plus courantes

j'ai donc essayé avec un .bmp mais bizarement rien ne s'affiche sur ma
form
j'ai repri un exemple de l'aide mais rien y fait



Compléte ton code avec les lignes que j'ai rajouté

Private Sub Form_Load()
Dim x As Picture



Me.ScaleMode = 3
Me.AutoRedraw = True
Picture1.ScaleMode = 3
Picture1.AutoRedraw = True

Set x = LoadPicture("G:Mes DocumentsMes images3dgmove.cur")
Picture1.Picture = x



Picture1.AutoSize = True

For i = 0 To 10
For j = 0 To 10
Form1.PaintPicture Picture1.Picture, j * Picture1.Width, i *
Picture1.Height, Picture1.Width, -Picture1.Height
Next j, i



--
TouTi
Avatar
marc.dufresne
bonjour
merci pour ta réponse ça fonctionne

"TouTi" <gelapplication[nospam]@tiscali.fr> a écrit dans le message de news:
441fafad$0$20165$
Marc
je viens d'essayé paintpicture , premièrement je crois que ça ne
fonctionne pas avec des .jpg


Ca fonctionne avec tous les types d'images les plus courantes

j'ai donc essayé avec un .bmp mais bizarement rien ne s'affiche sur ma
form
j'ai repri un exemple de l'aide mais rien y fait



Compléte ton code avec les lignes que j'ai rajouté

Private Sub Form_Load()
Dim x As Picture



Me.ScaleMode = 3
Me.AutoRedraw = True
Picture1.ScaleMode = 3
Picture1.AutoRedraw = True

Set x = LoadPicture("G:Mes DocumentsMes images3dgmove.cur")
Picture1.Picture = x



Picture1.AutoSize = True

For i = 0 To 10
For j = 0 To 10
Form1.PaintPicture Picture1.Picture, j * Picture1.Width, i *
Picture1.Height, Picture1.Width, -Picture1.Height
Next j, i



--
TouTi



Avatar
TouTi
> merci pour ta réponse ça fonctionne



Ca bidouille quelque part... car moi je n'ai pas ma réponse dans OE....?????
et il doit me manquer d'autres posts : Mais c'est un autre problème...

--
TouTi