フォームを常にアクティブに設定する方法はありますか? 別のフォームを開いても、開いたフォームは非アクティブに設定され、他のセットはアクティブに設定されます。
例:
「メイン フォーム」と「リマインダー フォーム」の 2 つのフォームがあります。アプリケーションを起動すると、「リマインダー フォーム」が読み込まれ、次に「メイン フォーム」が読み込まれ、その後「メイン フォーム」がアクティブになりますが、その「リマインダー フォーム」がアクティブになりたいのですが、フォームのロード方法のシーケンスが必要です同じであること。
質問する
8729 次
6 に答える
1
「アクティブ」とは、常に焦点を合わせていることを意味する場合、それは組み込みの方法では不可能であり、あなたが処理する必要があります。常に表示したい場合(他のフォームの上に表示したい場合)は、属性を使用できるため、 TopMost以外TopMost=true
のすべてのフォームに常に表示されます。ちなみに、別のTopMostフォームが表示された場合は保証されません。
お役に立てれば。
于 2012-04-12T06:51:30.243 に答える
1
あなたが使うことができます
public ReminderForm()
{
InitializeComponent();
MainForm frm2 = new MainForm();
MainForm.Show();
Activate();
}
フォームを常に他のフォームの上に置きたい場合は、TopMost = true;
于 2012-04-12T06:52:58.167 に答える
0
Deactivate
イベントに登録してからActivate
、フォームを再度アクティブにするために呼び出すことができます。
public ReminderForm()
{
//other stuff
Deactivate += (s, e) => { if (/* check if really do it */) Activate(); };
}
「リマインダーフォーム」を表示したいだけの場合TopMost
は、trueに設定する方が簡単です。
于 2012-04-12T06:51:59.440 に答える
0
TopMost
フォームのプロパティをに設定しますtrue
。
于 2012-04-12T06:52:45.137 に答える
0
TopMost
プロパティをに設定True
于 2012-04-12T08:31:59.523 に答える
0
private void button1_Click(object sender, EventArgs e)
{
Form2 f2 = new Form2();
f2.Show();
this.Focus();
}
于 2012-04-12T06:59:58.877 に答える