.NET TIPS

Visual Basic 2005でスプラッシュ・スクリーンの表示時間を変更するには?[VS 2005のみ、VB]

デジタルアドバンテージ 遠藤 孝信
2007/08/16

 「TIPS:Visual Basic 2005でスプラッシュ・スクリーンを表示するには?」では、Visual Basic 2005(Visual Basic 2005 Express EditionあるいはVisual Studio 2005のVisual Basic。以下、VB 2005)のプロジェクトのプロパティを設定することにより、アプリケーションの起動時にスプラッシュ・スクリーンを表示する方法を紹介している。

 このスプラッシュ・スクリーンは既定では2秒間表示されるが、本稿ではこの表示時間を変更する方法について解説する。

 なお、既定の2秒間というのは、スプラッシュ・スクリーンが最低限表示される時間である。つまり、メイン・フォームでの初期化処理がそれより早く完了しても、起動から2秒後にしかメイン・フォームは表示されない(スプラッシュ・スクリーンはメイン・フォームとは別スレッドで並行に実行される)。

 逆に、メイン・フォームでの初期化処理が2秒以上かかった場合には、それが完了するまでスプラッシュ・スクリーンは表示され続ける。この場合には、メイン・フォームのLoadイベントの処理が完了したタイミングでスプラッシュ・スクリーンが消え、メイン・フォームが表示される仕組みになっている。

My.Application. MinimumSplashScreenDisplayTimeプロパティ

 スプラッシュ・スクリーンが最低限表示される時間は、VB 2005のMy機能によりアクセスできる、

My.Application. MinimumSplashScreenDisplayTimeプロパティ

に設定されている。上述したように、その既定値は2000ミリ秒(=2秒)である。

 ただしこのプロパティは、スプラッシュ・スクリーンが表示される前に設定されている必要がある。このため、この値を変更するには、MyApplicationクラスのOnInitializeメソッドをオーバーライドし、そこで設定しなければならない*

 ここでMyApplicationクラスは、My.Applicationオブジェクトの基となるクラスであり、WindowsFormsApplicationBaseクラス(Microsoft.VisualBasic.ApplicationServices名前空間)の派生クラスである。

* WindowsFormsApplicationBaseクラスにはスプラッシュ・スクリーンの作成を行うための(OnInitializeメソッドから呼び出される)OnCreateSplashScreenメソッドが用意されているが、このメソッドはVB 2005により自動作成されるコードでオーバーライドされるため、それをわれわれがオーバーライドすることはできない。

 MyApplicationクラスについては「Visual Basic 2005のアプリケーション・フレームワークとは?」で解説している。このTIPSにあるように、MyApplicationクラスのOnInitializeメソッドをオーバーライドするには、まずプロジェクトのプロパティを開き、[アプリケーション イベントの表示]ボタンをクリックして、MyApplicationクラスの部分クラスを作成する。

 次に以下の画面のようにして、OnInitializeメソッドをオーバーライドするメソッドを作成する。


OnInitializeメソッドのオーバーライドの作成
「overrides」と入力するとIntelliSense機能によりオーバーライド可能なメソッドの一覧が表示されるので、OnInitializeメソッドを選択する。

 そして、例えば表示時間を1秒間に変更する場合には、OnInitializeメソッドの内容を次のように記述する。

Partial Friend Class MyApplication

  Protected Overrides Function OnInitialize(ByVal commandLineArgs As System.Collections.ObjectModel.ReadOnlyCollection(Of String)) As Boolean

    My.Application.MinimumSplashScreenDisplayTime = 1000 ' 1秒間表示

    Return MyBase.OnInitialize(commandLineArgs)
  End Function

End Class
オーバーライドしたOnInitializeメソッド
グレーの部分はVB 2005により自動的に記述されるコード。

 なお、このMyApplicationクラスのインスタンスとMy.Applicationオブジェクトは同じものであるため、MinimumSplashScreenDisplayTimeプロパティを設定する行は、

Me.MinimumSplashScreenDisplayTime = 1000

と記述することもできる。End of Article

利用可能バージョン:.NET Framework 2.0のみ
カテゴリ:Visual Studio 2005 処理対象:プロジェクト
カテゴリ:Visual Basic 2005 処理対象:アプリケーション・フレームワーク
使用ライブラリ:WindowsFormsApplicationBaseクラス(Microsoft.VisualBasic.ApplicationServices名前空間)
関連TIPS:Visual Basic 2005でスプラッシュ・スクリーンを表示するには?
関連TIPS:Visual Basic 2005のアプリケーション・フレームワークとは?

この記事と関連性の高い別の.NET TIPS
Visual Basic 2005でスプラッシュ・スクリーンにメッセージを表示するには?
Visual Basic 2005でスプラッシュ・スクリーンを表示するには?
Windowsアプリケーションでスプラッシュ・スクリーンを表示するには?
WPFでスプラッシュ・スクリーンを表示するには?
Visual Basic 2005のアプリケーション・フレームワークとは?
このリストは、(株)デジタルアドバンテージが開発した
自動関連記事探索システム Jigsaw(ジグソー) により自動抽出したものです。
generated by

「.NET TIPS」


Insider.NET フォーラム 新着記事
  • 第2回 簡潔なコーディングのために (2017/7/26)
     ラムダ式で記述できるメンバの増加、throw式、out変数、タプルなど、C# 7には以前よりもコードを簡潔に記述できるような機能が導入されている
  • 第1回 Visual Studio Codeデバッグの基礎知識 (2017/7/21)
     Node.jsプログラムをデバッグしながら、Visual Studio Codeに統合されているデバッグ機能の基本の「キ」をマスターしよう
  • 第1回 明瞭なコーディングのために (2017/7/19)
     C# 7で追加された新機能の中から、「数値リテラル構文の改善」と「ローカル関数」を紹介する。これらは分かりやすいコードを記述するのに使える
  • Presentation Translator (2017/7/18)
     Presentation TranslatorはPowerPoint用のアドイン。プレゼンテーション時の字幕の付加や、多言語での質疑応答、スライドの翻訳を行える
@ITメールマガジン 新着情報やスタッフのコラムがメールで届きます(無料)

注目のテーマ

Insider.NET 記事ランキング

本日 月間