1. ホーム
  2. c#

起動時の単一フォームの非表示

2023-08-06 10:17:52

質問

アプリケーションにフォームが1つあり、Loadメソッドでフォームを非表示にする必要があります。

フォームは必要なときにそれ自身を表示します (outlook 2003 スタイルのポップアップに沿って考えてください)が、厄介なことなしにロード時にフォームを隠す方法を見つけ出すことができません。

何か提案はありますか?

どのように解決するのですか?

私はC#からこれを来ているが、vb.netで非常に似ているはずです。

メインプログラムのファイルのMainメソッドに、次のようなものがあります。

Application.Run(new MainForm());

これは新しいメインフォームを作成し、アプリケーションの寿命をメインフォームの寿命に制限します。

しかし、Application.Run()のパラメータを削除すると、フォームが表示されていない状態でアプリケーションが起動され、フォームの表示・非表示を自由に設定できるようになります。

Loadメソッドでフォームを非表示にするのではなく、Application.Run()を呼ぶ前にフォームを初期化します。フォームにはタスクバーにアイコンを表示するためのNotifyIconを付けると思いますが、これはフォーム自体がまだ表示されていなくても表示することができます。呼び出し Form.Show() または Form.Hide() で、それぞれフォームを表示、非表示にします。