Premesso che:
- ho utilizzato il programma contenuto in Orologio scaricato proprio da "www.PieroTofy.it";
- e che molti passaggi non li ho ben compresi,
ho approntato il listato seguente che mi sembra funzionare .
Spero che possa essere d'aiuto.
Sal47
----------------
Option Explicit
Const Pi As Double = 3.14159265358979
Dim n, k As Integer
________________________________________
Private Sub Form_Activate()
' se le divisioni sono poche si possono aumentare le dimensioni dell'Image
n = Val(InputBox("Quante immagini vuoi disporre sulla circonferenza?"))
k = 3 * n
End Sub
__________________________
Private Sub Form_Click()
Dim Divisioni As Integer
'Me.Circle (0, 0), 4200
'Me.PSet (0, 0), vbBlack
' if Divisioni =60 then Pi/180
' if Divisioni =30 then Pi/90
' if Divisioni =20 then Pi/60
' if Divisioni =10 then Pi/30
img(0).Visible = False
For Divisioni = 1 To n
lnSec.X2 = Sin(Divisioni * 6 * Pi / k) * 4400
lnSec.Y2 = Cos(Divisioni * 6 * Pi / k) * 4400
Me.PSet (lnSec.X2, lnSec.Y2), vbRed
'Line (lnSec.X1, lnSec.Y1)-(lnSec.X2, lnSec.Y2)
' forse meglio controllo Image (anzichè PictureBox) che ha la proprietà stretch
Load img(Divisioni)
img(Divisioni).Left = lnSec.X2
img(Divisioni).Top = lnSec.Y2
img(Divisioni).Visible = True
Next Divisioni
End Sub
________________________________
Private Sub Form_Load()
'img(0).Width = 375
'img(0).Height = 375
Me.Scale (-5500, 5500)-(5500, -5500)
lnSec.X1 = 0
lnSec.Y1 = 0
End Sub
_______________________________
Private Sub Form_Resize()
Me.Refresh
If Me.Width > 10590 Then Me.Width = 10590 '9330
Me.Height = 9330
Form_Load
End Sub
---------
|