devxlogo

ImplodeForm – Hiding a form with an implosion effect

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 SubSub 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        System.Threading.Thread.CurrentThread.Sleep(stepDuration)    NextEnd Sub

devx-admin

Share the Post: