1

有没有办法将表单设置为始终处于活动状态?无论我打开另一个表单,我打开的表单设置为非活动状态,而其他设置为活动状态。
例如:
我有两个表格:“主表格”和“提醒表格”。当我启动应用程序时,它会加载“提醒表单”,然后加载“主表单”,然后“主表单”处于活动状态,但我希望“提醒表单”处于活动状态,但表单加载方式的顺序需要是一样的。

4

6 回答 6

1

如果说“活跃”是指始终保持专注,那么内置方式是不可能的,它应该由您处理。如果您希望它始终可见(它位于其他表单之上),您可以使用TopMost=true属性,因此它将始终覆盖所有非 TopMost表单,顺便说一句,如果出现另一个 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
    private void button1_Click(object sender, EventArgs e)
    {
        Form2 f2 = new Form2();
        f2.Show();
        this.Focus();
    }
于 2012-04-12T06:59:58.877 回答
0

TopMost属性设置为True

于 2012-04-12T08:31:59.523 回答