'per eventuali chiarimenti o consigli sul codice
'potete contattarmi tramite il forum di "www.pierotofy.it" (se siete iscritti)
'o tramite MSN Messenger all'indirizzo "bear_87@libero.it"
'ringrazio LORDTZEENTCH per l'aiuto ^_^
Dim I As Integer
Dim K As Integer
Dim Tx As Integer
Dim Ty As Integer
Private Sub cmdEsci_Click()
End
End Sub
Private Sub cmdHor_Click()
tmHor.Enabled = True
End Sub
Private Sub cmdVert_Click() 'attiva il timer tmVert
tmVert.Enabled = True
End Sub
Private Sub Form_Load() 'imposta le variabili
I = frmMain.Height 'altezza del form
K = frmMain.Width 'larghezza del fom
End Sub
'questa sub fa' si che si possa spostare il form trascinandolo con il mouse
'questo è un evento che controlla che il mouse sia in movimento e (contemporaneamente)
'che il pulsante del mouse sia premuto
Private Sub Form_MouseMove(Button As Integer, Shift As Integer, X As Single, Y As Single)
If Button = 1 Then 'se si sta trascinando con il pulsante sinistro del mouse...
frmMain.Left = frmMain.Left + (X - Tx) '(la distanza del form dal lato sinistro dello
'shermo) è uguale (alla stessa + (la coordinata X attuale
'del mouse - la coordinata X del mouse prima del click)
frmMain.Top = frmMain.Top + (Y - Ty) '(la distanza del form dal lato superiore dello
'shermo) è uguale (alla stessa + (la coordinata Y attuale
'del mouse - la coordinata Y del mouse prima del click)
Else
Tx = X 'queste variabili contengono le coordinate del mouse
Ty = Y 'fin quando non si comincia a trascinare (prima del click sul form)
End If
End Sub
'questa sub è la stessa di quella sopra, la sola differenza è che
'è applicata ad un oggetto all'interno del form, può essere usata nel drag-drop
Private Sub imgPalla_MouseMove(Button As Integer, Shift As Integer, X As Single, Y As Single)
If Button = 1 Then
imgPalla.Left = imgPalla.Left + (X - Tx)
imgPalla.Top = imgPalla.Top + (Y - Ty)
Else
Tx = X
Ty = Y
End If
'questa parte può essere usata in sostituzione del drag-drop,
'nasconde la palla se questa è sopra al cestino
'ragionateci un po', non è affatto difficile........ :-)))))
If ((imgPalla.Top >= imgCestino.Top) And (imgPalla.Top + imgPalla.Height <= imgCestino.Top + imgCestino.Height)) _
And ((imgPalla.Left >= imgCestino.Left) And (imgPalla.Left + imgPalla.Width <= imgCestino.Left + imgCestino.Width)) Then
imgPalla.Visible = False
Else
imgPalla.Visible = True
End If
End Sub
Private Sub tmHor_Timer() 'stessa cosa di tmVert_Timer(), ma con la larghezza
If K >= 15 Then
K = K - 15 'significa: larghezza del form (I) = larghezza del form - 15 twips
frmMain.Width = K
Else
frmMain.Width = 0
tmHor.Enabled = False
End
End If
End Sub
Private Sub tmVert_Timer() 'da' l'effetto di chiusura a tendina del form
If I >= 15 Then 'se si usa un numero minore di 15 o un intervallo
'del timer inferiore (in qst caso l'intervallo è 1
'si può solo diminuire la velocità
I = I - 15 'significa: altezza del form (I) = altezza del form - 15 twips
frmMain.Height = I
Else
frmMain.Height = 0 'se l'altezza rimanente è inferiore a 15 twips, non posso
'sottrarle 15 twips (l'altezza del form non può essere un numero negativo)
tmVert.Enabled = False ' quindi l'azzero e disattivo il timer
End
End If
End Sub