有没有办法将窗体设置为始终处于活动状态?无论我是否打开另一个表单,我打开的表单都设置为非活动状态,而其他设置为活动状态。
例如:
我有两个表单:“主表单”和“提醒表单”。当我启动应用程序时,它加载“提醒窗体”,然后“主窗体”加载,之后“主窗体”是活动的,但我想,“提醒窗体”是活动的,但窗体加载的顺序需要相同。
发布于 2012-04-12 14:51:30
如果你说的“主动”意味着始终有一个焦点,这是不可能的内置方式,它应该由你来处理。如果希望它始终可见(位于其他表单的顶部),可以使用TopMost=true属性,这样它将始终覆盖所有非TopMost表单,顺便说一句,如果出现另一个TopMost表单,则不能保证该属性。
希望这能有所帮助。
发布于 2012-04-12 14:52:58
你可以使用
public ReminderForm()
{
InitializeComponent();
MainForm frm2 = new MainForm();
MainForm.Show();
Activate();
}如果希望窗体始终位于其他窗体的顶部,请设置TopMost = true;
发布于 2012-04-12 14:51:59
您可以注册到Deactivate事件,然后调用Activate来再次激活表单:
public ReminderForm()
{
//other stuff
Deactivate += (s, e) => { if (/* check if really do it */) Activate(); };
}如果你只是想让“提醒表单”可见,将TopMost设置为true是更简单的方法。
https://stackoverflow.com/questions/10118713
复制相似问题