使用C#实现Windows下无焦点窗体
来源:互联网 发布:外包公司java面试题 编辑:程序博客网 时间:2024/05/22 03:17
[System.Runtime.InteropServices.DllImport("user32.dll")]
private extern static IntPtr SetActiveWindow(IntPtr handle);
private const int WM_ACTIVATE = 0x006;
private const int WM_ACTIVATEAPP = 0x01C;
private const int WM_NCACTIVATE = 0x086;
private const int WA_INACTIVE = 0;
private const int WM_MOUSEACTIVATE = 0x21;
private const int MA_NOACTIVATE = 3;
protected override void WndProc(ref Message m)
{
if (m.Msg == WM_MOUSEACTIVATE)
{
m.Result = new IntPtr(MA_NOACTIVATE);
return;
}
else if (m.Msg == WM_NCACTIVATE)
{
if (((int)m.WParam & 0xFFFF) != WA_INACTIVE)
{
if (m.LParam != IntPtr.Zero)
{
SetActiveWindow(m.LParam);
}
else
{
SetActiveWindow(IntPtr.Zero);
}
}
}
base.WndProc(ref m);
}
后面一段else if WM_NCACTIVATE是不必要的,如果窗口一开始是用ShowWindow且NOACTIVATE来启动的话。
本文来自CSDN博客,转载请标明出处:http://blog.csdn.net/thirdapple/archive/2008/08/01/2755684.aspx
- 使用C#实现Windows下无焦点窗体
- 使用C#实现Windows下无焦点窗体
- 使用C#实现Windows下无焦点窗体
- C#无焦点显示窗体
- 使用C#实现移动无边框窗体
- 使用C#实现移动无边框窗体
- 使用C#实现移动无边框窗体
- C#下如何实现无边框窗体移动
- c# 实现无标题栏的窗体移动
- C#实现无标题栏窗体的拖动
- C# 实现拖动无边框窗体
- C#实现无边框窗体拖动
- C#实现无边框窗体拖动
- C#中实现无边框窗体拖动
- 创建无焦点控件或窗体
- C# 在windows form实现不规则窗体&透明窗体
- C# 使用Windows窗体的命名空间
- C#中实现拖动无边框窗体Form
- cascade属性
- 基于开源软件构建先进的嵌入式电源管理
- C语言中的宽字符与多字节字符(转载)
- .NET非对称加密(1)密钥生成与保存(新手教程)
- JS判断浏览器类型方法
- 使用C#实现Windows下无焦点窗体
- ATL(VC6)编程初级教程
- string比较是否为空
- C/C++ volatile关键字用法总结
- mysql获取表中的自动递增字段的值
- linux time转换为可读时间字符串
- pthread线程编程--POSIX的线程机制
- 利用JS判断客户端是否已安装Adobe Reader软件并提示下载安装
- Atl 编译错误 error LNK****