Login | Register   
RSS Feed
Download our iPhone app
Browse DevX
Sign up for e-mail newsletters from DevX

Tip of the Day
Language: VB7
Expertise: beginner
Apr 28, 2003

ImplodeForm - Hiding a form with an implosion effect

' Hiding a form with an implosion effect.
' the numSteps parameter is the number of steps to decrease the form size from 
' the current size to 0
' the stepDuration argument is the number of milliseconds between each step

' Example:
'   Private Sub Form1_Closing(...) Handles MyBase.Closing
'      ImplodeForm(Me)
'   End Sub

Sub ImplodeForm(ByVal frm As Form, Optional ByVal numSteps As Integer = 25, _
    Optional ByVal stepDuration As Integer = 10)
    ' do nothing if the form is minimized or maximized
    If frm.WindowState <> FormWindowState.Normal Then Exit Sub

    Dim origLeft As Integer = frm.Left
    Dim origTop As Integer = frm.Top
    Dim currHeight As Integer = frm.Height
    Dim currWidth As Integer = frm.Width
    Dim stepHeight = currHeight / numSteps
    Dim stepWidth = currWidth / numSteps

    Dim i As Integer
    For i = 1 To numSteps
        'calc the new height/width
        currHeight -= stepHeight
        currWidth -= stepWidth
        ' display the form
        frm.SetBounds(origLeft, origTop, currWidth, currHeight)
        ' pause if so is requested
End Sub
Marco Bellinaso
Comment and Contribute






(Maximum characters: 1200). You have 1200 characters left.



Thanks for your registration, follow us on our social networks to keep up-to-date