基本上,我如何判断我的程序是否位于所有其他程序之上?
一个相当简单的方法是 P/Invoke获取前景窗口()并比较返回到应用程序的form.Handle属性的HWND。
using System;
using System.Runtime.InteropServices;
namespace MyNamespace
{
class GFW
{
[DllImport("user32.dll")]
private static extern IntPtr GetForegroundWindow();
public bool IsActive(IntPtr handle)
{
IntPtr activeHandle = GetForegroundWindow();
return (activeHandle == handle);
}
}
}
然后,从您的表格中:
if (MyNamespace.GFW.IsActive(this.Handle))
{
// Do whatever.
}
本文内容由网友自发贡献,版权归原作者所有,本站不承担相应法律责任。如您发现有涉嫌抄袭侵权的内容,请联系:hwhale#tublm.com(使用前将#替换为@)