判断是否按下鼠标按钮的时候并按下了CTRL,SHIFT等键
方法如下:获取是否按下什么鼠标按键相对简单:
通过e.Button == MouseButtons.Left,通过MouseButtons枚举就可以判断,如果还要求判断是否按了功能键,如Ctrl及SHIT键等,需要使用API函数
GetKeyState
使用:
[DllImport("USER32.dll")]
static extern short GetKeyState(int nVirtKey);
const int VK_CONTROL = 0x11;
实现如下:
[DllImport("USER32.dll")]
static extern short GetKeyState(int nVirtKey);
const int VK_CONTROL = 0x11;
private void frmMain_MouseDown(object sender, MouseEventArgs e)
{
if (e.Button == MouseButtons.Left && ((GetKeyState(VK_CONTROL) & 0x8000)!=0))
{
//你同时按下了Ctrl加左键
MessageBox.Show("CTRL+Left");
}
}