我现在需要在一个button里判断有没有按下组合键ctrl+shift+right,没有实现,
form里只有一个button,
代码是这样的:
 private void button1_Click(object sender, EventArgs e)
 {
     keybd_event(0x11, 0, 0, 0);     //按下ctrl
     keybd_event(0x10, 0, 0, 0);     //按下shift
     keybd_event(0x27, 0, 0, 0);     //按下right
     keybd_event(0x27, 0, 2, 0);     //抬起right
     keybd_event(0x10, 0, 2, 0);     //抬起shift
     keybd_event(0x11, 0, 2, 0);     //抬起ctrl
 }
 private void button1_KeyDown(object sender, KeyEventArgs e)
 {
     if (e.Control && e.Shift && e.KeyCode == Keys.Right)
         this.BackColor = Color.Red;
 }
调试时if语句里的条件总是FALSE,
但是组合键ctrl+shift+A就能实现,
private void button1_Click(object sender, EventArgs e)
 {
     keybd_event(0x11, 0, 0, 0);     //按下ctrl
     keybd_event(0x10, 0, 0, 0);     //按下shift
     keybd_event(0x41, 0, 0, 0);     //按下A
     keybd_event(0x41, 0, 2, 0);     //抬起A
     keybd_event(0x10, 0, 2, 0);     //抬起shift
     keybd_event(0x11, 0, 2, 0);     //抬起ctrl
 }
 private void button1_KeyDown(object sender, KeyEventArgs e)
 {
     if (e.Control && e.Shift && e.KeyCode == Keys.A)
         this.BackColor = Color.Red;
 }
这样就能实现ctrl+shift+A,
请问是什么原因不能实现ctrl+shift+right呢?
3Q!