現在、WinFormにスプラッシュ画面を追加しています。私のスプラッシュ画面は別の形です。
this.Text = "";
this.ControlBox = False;
フォームにあるのは、BackgroundImageと
this.BackgroundImageLayout = BackgroundImageLayout.Center
MainFormの初期化が完了するまで値をインクリメントするProgressBar。
スプラッシュを開くには、ShowDialogではなくShowを使用します。プログレスバーは正常に機能しますが、PictureBoxのBackgroundImageが読み込まれることはありません。私が見るのは、ProgressBarのある白い背景だけです。
ProgressBarをインクリメントするのと同じメソッドでSplashScreen.Show()を使用します。このメソッドは、MainFormのコンストラクターから呼び出されるメソッドで呼び出されます。
別のスレッドでSplashScreen.Showを使用してみましたが、同じ問題が発生しました。ご協力いただければ幸いです。必要に応じて、さらに情報を提供させていただきます。
解決済み:
独自のスレッドで開始する場合は、スレッドが終了するとShowがフォームを閉じるため、ShowDialogを使用する必要がありますが、ShowDialogを使用すると、フォームが閉じられるまでスレッドは実行されたままになります。みんなの助けてくれてありがとう。