Note that there are some explanatory texts on larger screens.

plurals
  1. POClosing startup form kills application
    text
    copied!<p>I make a form that fades in then fades out and loads another form up. when the new form has loaded it closes the the start up form. </p> <p>Problem is when it closes this start up form it kills my apllication.</p> <pre><code>Public Class Splash Dim appearance As Boolean = False Private Sub Splash_Load(ByVal sender As System.Object, ByVal e As System.EventArgs) Handles MyBase.Load Opacity = 0 FadeIn.Start() End Sub Private Sub FadeIn_Tick(ByVal sender As System.Object, ByVal e As System.EventArgs) Handles FadeIn.Tick If Not appearance Then Opacity += 0.015 End If If Opacity = 1 Then appearance = True End If If appearance = True Then Opacity -= 0.015 If Opacity = 0 Then Form1.Show() End If End If End Sub End Class Public Class Form1 Private Function WebLoad() While WebBrowser1.ReadyState &lt;&gt; WebBrowserReadyState.Complete Application.DoEvents() End While Return 0 End Function Private Function Login(ByVal User As String, ByVal Pass As String) WebBrowser1.Navigate("http://caan/SC5/SC_Login/aspx/login_launch.aspx?SOURCE=ESOLBRANCHLIVE") WebLoad() WebBrowser1.Document.GetElementById("txtUserName").SetAttribute("value", User) WebBrowser1.Document.GetElementById("txtPassword").SetAttribute("value", Pass) Dim allImgTags As HtmlElementCollection = WebBrowser1.Document.GetElementsByTagName("img") If allImgTags IsNot Nothing Then For Each img As HtmlElement In allImgTags If img.GetAttribute("src").Contains("/images/SC5Login07.jpg") Then img.InvokeMember("Click") Exit For End If Next img End If Return 0 End Function Private Sub Form1_Load(ByVal sender As System.Object, ByVal e As System.EventArgs) Handles MyBase.Load Login(user, pass) WebBrowser2.Navigate("http://caan/SC5/SC_PartsCentre/aspx/partscentre_frameset.aspx") WebBrowser1.Navigate("http://caan/SC5/SC_RepairJob/aspx/RepairJob_frameset.aspx") Splash.Close() End Sub End Class </code></pre> <p>I am aware that there is a propper splash screen form but it doesnt stay open long enough. On its fadeout it just closes and launches my app</p> <p><strong>My main question is how can i stop splash.close() from closing my whole application?</strong></p> <p><em><strong>Answer</em></strong></p> <p>Sorted this now, Wont let me answer at the bottem...</p> <p>Used to splashscreen provided in visualbasic express and added a couple lines i found on msdn to the Application Events</p> <p><strong>ApplicationEvents</strong></p> <pre><code>Namespace My ' The following events are available for MyApplication: ' ' Startup: Raised when the application starts, before the startup form is created. ' Shutdown: Raised after all application forms are closed. This event is not raised if the application terminates abnormally. ' UnhandledException: Raised if the application encounters an unhandled exception. ' StartupNextInstance: Raised when launching a single-instance application and the application is already active. ' NetworkAvailabilityChanged: Raised when the network connection is connected or disconnected. Partial Friend Class MyApplication Protected Overrides Function OnInitialize( _ ByVal commandLineArgs As _ System.Collections.ObjectModel.ReadOnlyCollection(Of String)) As Boolean Me.MinimumSplashScreenDisplayTime = 7000 Return MyBase.OnInitialize(commandLineArgs) End Function End Class End Namespace </code></pre> <p><em><strong>SplashScreen1.VB</em></strong></p> <pre><code>Public NotInheritable Class SplashScreen1 Dim appearance As Boolean = False Private Sub SplashScreen1_Load(ByVal sender As Object, ByVal e As System.EventArgs) Handles Me.Load If My.Application.Info.Title &lt;&gt; "" Then ApplicationTitle.Text = My.Application.Info.Title Else ApplicationTitle.Text = System.IO.Path.GetFileNameWithoutExtension(My.Application.Info.AssemblyName) End If Version.Text = System.String.Format(Version.Text, My.Application.Info.Version.Major, My.Application.Info.Version.Minor) Copyright.Text = My.Application.Info.Copyright Opacity = 0 Fade.Start() End Sub Private Sub MainLayoutPanel_Paint(ByVal sender As System.Object, ByVal e As System.Windows.Forms.PaintEventArgs) Handles MainLayoutPanel.Paint End Sub Private Sub Timer1_Tick(ByVal sender As System.Object, ByVal e As System.EventArgs) Handles Fade.Tick Fade.Interval = 100 If Not appearance Then Opacity += 0.1 End If If appearance = True Then Opacity -= 0.1 End If If Opacity = 1 Then Fade.Interval = 5000 appearance = True End If End Sub End Class </code></pre>
 

Querying!

 
Guidance

SQuiL has stopped working due to an internal error.

If you are curious you may find further information in the browser console, which is accessible through the devtools (F12).

Reload