Private Sub Form_Activate()
' tout ce qui est ici n'est là que pour te "construire" un petit exemple
' tu n'as, toi, pas besoin de le faire par code. Il te suffit de déterminer tout cela
' en mode création
Me.ScaleMode = vbTwips
Me.Move 0, 0, Screen.Width, Screen.Height
With Picture1
.ScaleMode = vbPixels
.Move 0, 0, Screen.Width / 2, Screen.Height / 2
.AutoRedraw = True
.AutoSize = False
End With
With Picture2
.ScaleMode = vbPixels
.Move Screen.Width / 2 + 10, 0
.AutoRedraw = True
.AutoSize = True
End With
With Picture3
.ScaleMode = vbPixels
.Move 0, Picture1.Height + 5, Picture1.Width, Picture1.Height
'AutoSize = True
End With
With allons_y
.Move Me.Width / 2 + 20, Me.Height / 2 + 100, Me.Width / 2, Me.Height / 2
.Caption = "clique ici et regarde ce qui se passe"
.FontSize = 24
End With
End Sub
Private Sub allons_y_Click()
Dim la_picture1 As StdPicture, ou As Object, oux As Long, ouy As Long
Picture1.Picture = Picture1.Image
DoEvents
Set la_picture1 = Picture1.Picture
Set ou = Picture2.Container
oux = Picture2.Left
ouy = Picture2.Top
Set Picture2.Container = Picture1
Picture2.Move 20, 10
MsgBox "on a mis la petite dans la grande et on l'y a placée en 20,10 (simulation de ce que tu fais)"
Picture2.Visible = False ' on n'a même plus besoin de continuer à la voir
For i = 1 To 4
'j'ai fait exprès d'en mettre ainsi 4 et te forcer ainsi à ne pas te contenter de copier/coller
' tu vas te trouver forcé de réfléchir, d'analyser, de comprendre, puis d'adapter
Picture1.PaintPicture Picture2.Picture, Picture2.Left * i, Picture2.Top * i, Picture2.Width, Picture2.Height, 0, 0, Picture2.Width, Picture2.Height
Next
MsgBox "Tiens ===>> je t'en ai déssinées 4, à 4 endroits différents. Ce sont maintenant des parties du dessin et non des pictureboxes"
MsgBox "te reste plus qu'à sauvegarder l'image de picture1"
SavePicture Picture1.Image, "d:\toto.bmp" ' observe : propriété image et non picture
DoEvents
'preuve
Picture3.Picture = LoadPicture("d:\toto.bmp")
MsgBox "voilà ! c'est fait" & vbCrLf & "remettons tout à sa place (pas obligatoire ... juste pour fignoler)"
Picture1.Picture = la_picture1
Set Picture2.Container = ou
Picture2.Move oux, ouy
Picture2.Visible = True
End Sub
Vous n’avez pas trouvé la réponse que vous recherchez ?
Posez votre question