using ClassLibrary.Win32;
using System.Runtime.InteropServices;
//快捷键
[DllImport("user32.dll", EntryPoint = "keybd_event")]
public static extern void keybd_event(
byte bVk, //虚拟键值
byte bScan,// 一般为0
int dwFlags, //这里是整数类型 0 为按下,2为释放
int dwExtraInfo //这里是整数类型 一般情况下设成为0
);
protected override bool ProcessCmdKey(ref Message msg, Keys keyData)
{
if ((msg.Msg == (int)WindowMessage.WM_KEYDOWN) || (msg.Msg == (int)WindowMessage.WM_SYSKEYDOWN))
{
switch (keyData)
{
case Keys .Enter:
keybd_event((byte)Keys.Tab, 0, 0, 0);
break;
case Keys.F2:
if (MessageBoxHelper.ShowQuestion("确定保存?") == DialogResult.Yes)
{
btnQuery_Click(null, null);
}
break;
default:
break;
}
}
return base.ProcessCmdKey(ref msg, keyData);
}
using System.Runtime.InteropServices;
//快捷键
[DllImport("user32.dll", EntryPoint = "keybd_event")]
public static extern void keybd_event(
byte bVk, //虚拟键值
byte bScan,// 一般为0
int dwFlags, //这里是整数类型 0 为按下,2为释放
int dwExtraInfo //这里是整数类型 一般情况下设成为0
);
protected override bool ProcessCmdKey(ref Message msg, Keys keyData)
{
if ((msg.Msg == (int)WindowMessage.WM_KEYDOWN) || (msg.Msg == (int)WindowMessage.WM_SYSKEYDOWN))
{
switch (keyData)
{
case Keys .Enter:
keybd_event((byte)Keys.Tab, 0, 0, 0);
break;
case Keys.F2:
if (MessageBoxHelper.ShowQuestion("确定保存?") == DialogResult.Yes)
{
btnQuery_Click(null, null);
}
break;
default:
break;
}
}
return base.ProcessCmdKey(ref msg, keyData);
}