Benutzer mit den meisten Antworten
Exception nach Begrüßungsbildschirm

Frage
-
Hallo zusammen,
ich habe eine Frage bezügl. des Begrüßungsbildschirm in VB. Ich nutze die Express-Version und habe damit schon mehrere Projekte erstellt. In all diesen Projekten benutze ich einen Begrüßungsbildschirm, den ich unter Prjekt-Eigenschaften->Awendung->Begrüßungsbildschirm eingetragen habe. Zusätzlich habe ich noch foglendes Anwendungsereignis defineirt:
Protected Overrides Function OnInitialize(ByVal commandLineArgs As System.Collections.ObjectModel.ReadOnlyCollection(Of String)) As Boolean 'Anzeigedauer des Splashscreens auf eine beliebige Zeit setzen, 'in diesem Beispiel auf 10 Sekunden. Me.MinimumSplashScreenDisplayTime = 3000 Return MyBase.OnInitialize(commandLineArgs) End Function
Nun kommt es aber ab und zu vor, dass ich nach dem Begrüßungsbildschirm eine Exception "Invoke oder BeginInvoke kann für das Steuerelement erst aufgerufen werden, wenn das Fensterhandle erstellt wurde." bekomme.
Woran liegt das?
Mit freundlichen Grüßen
Stefan Hogg
Antworten
-
Hat keiner eine Idee, woran das liegen könnte?
Hallo Stefan,
schau mal in diesen thread. Das scheint eine Lösung zu sein.
Gruss Ellen
P.S. habe es gerade getestet: perfekt!
Ich benutze/ I'm using VB2008 & VB2010
- Bearbeitet Ellen Ramcke Donnerstag, 26. April 2012 10:58
- Als Antwort markiert hoggste Donnerstag, 26. April 2012 12:12
Alle Antworten
-
Hat keiner eine Idee, woran das liegen könnte?
Hallo Stefan,
schau mal in diesen thread. Das scheint eine Lösung zu sein.
Gruss Ellen
P.S. habe es gerade getestet: perfekt!
Ich benutze/ I'm using VB2008 & VB2010
- Bearbeitet Ellen Ramcke Donnerstag, 26. April 2012 10:58
- Als Antwort markiert hoggste Donnerstag, 26. April 2012 12:12
-
Hallo Ellen,
genau das war's.
Hab den Begrüßungsbildschirm aus den Projekt-Eigenschaften raus geworfen und ruf ihn in der Load-Sub meiner Main auf:
Dim splashScreen As New frmSplash splashScreen.Show() Application.DoEvents() Threading.Thread.Sleep(3000) splashScreen.Close() splashScreen.Dispose()
-
Hallo Stefan,
ich habe die andere Variante getestet. Im Splashscreen Code Fenster Public Sub New eingeben. Dann kommt folgender code automatisch und die erste code Zeile manuell eingeben.
Gruss Ellen
Public Sub New()
My.Application.MinimumSplashScreenDisplayTime = 10000' This call is required by the Windows Form Designer. InitializeComponent() ' Add any initialization after the InitializeComponent() call. End Sub
Ich benutze/ I'm using VB2008 & VB2010
- Bearbeitet Ellen Ramcke Donnerstag, 26. April 2012 15:02