我有一个显示通知窗口的表单,但只有当表单不在焦点或活动时才需要显示弹出窗口。
这样的事情:
if (!form.Active)
{
//Do something
}
有办法吗?
答案 0 :(得分:4)
这可能会帮助您完成任务。如果您的表单处于活动状态,它将告诉您。如果您单击该表格,它也会告诉您。
using System;
using System.Text; // probably not required
using System.Windows.Forms; // probably not required
using System.Threading; // probably not required
namespace AppName
{
public partial class Form1 : Form
{
protected override void OnActivated(EventArgs e)
{
Console.WriteLine("Form Activated");
}
protected override void OnDeactivate(EventArgs e)
{
Console.WriteLine("Form deactActivated");
}
// more program etc.
}
}
答案 1 :(得分:1)
if (Form.ActiveForm != yourform)
{
//form not active
//do something
}
else
{
// form active
// do something
}