最简单方法是使用RegisterHotKey函数。在调用该函数后你的进程会在ALT-TAB按下时比系统先得到通知。然后在你的程序中处理WM_HOTKEY消息
解决方案 »
- C#基础测试题,不是很确定,麻烦各位帮忙!
- 保存附件代码没有报错,但导出的文件里面只有System.Byte[]内容
- 伪进度条的一个小问题
- datagridview 添加数据后如何在自动刷新
- winform datagridview+reportviewer问题
- 有需要图形验证码识别程序(DLL类库)的吗?
- 求一段小程序
- 想让C#导出的txt格式和PB导出的txt格式一样,怎么做?
- 能否在datagrid中加个自动增长的序号字段
- 如何在datagrid中取出焦点所在行的数据,包括其他列.
- 求助:用数据集DataSet 进行DataAdapter.UpData的错误 在线=.......
- 还是treeview控件地问题?点各节点的弹出快捷键问题!详情请看正文!
key are pressed. This is a sample code demonstrating how to setup a system
hook in C#:public class Win32Hook
{ [DllImport("kernel32")]
public static extern int GetCurrentThreadId(); [DllImport( "user32",
CharSet=CharSet.Auto,CallingConvention=CallingConvention.StdCall)]
public static extern int SetWindowsHookEx(
HookType idHook,
HOOKPROC lpfn,
int hmod,
int dwThreadId); public enum HookType
{
WH_KEYBOARD = 2
}
public delegate int HOOKPROC(int nCode, int wParam, int lParam); public void SetHook()
{
// set the keyboard hook
SetWindowsHookEx(HookType.WH_KEYBOARD,
new HOOKPROC(this.MyKeyboardProc),
0,
GetCurrentThreadId());
} public int MyKeyboardProc(int nCode, int wParam, int lParam)
{
//Perform your process
return 0;
}
}And then you can install the hook procedure by the following code:Win32Hook hook = new Win32Hook();
hook.SetHook();
LockWorkStation();
在按alt+tab时看不到它的图标。?????