再winform中使用ProcessCmdKey處理快捷鍵響應,針對單一快捷鍵響應沒有任何問題。可是針對組合鍵老是沒法響應,以下:ide
protected override bool ProcessCmdKey(ref System.Windows.Forms.Message msg, Keys keyData)
{
if (keyData == (Keys.Control|Keys.C ))
{
MessageBox.Show("Ctrl+C");
return true;
}
return false;
}orm
找了很多解釋,也沒找到緣由。form
後來在StackOverflow上看到一我的說把順序調換一下,亦即:快捷鍵
protected override bool ProcessCmdKey(ref System.Windows.Forms.Message msg, Keys keyData)
{
if (keyData == (Keys.C|Keys.Control))
{
MessageBox.Show("Ctrl+C");
return true;
}
return false;
}winform
就能夠正常響應。return
記錄一下,但願其餘人別踩坑了。