绑定多个键到KeyDown事件(Shift + *(星号))

本文关键字:Shift 星号 事件 KeyDown 绑定 | 更新日期: 2023-09-27 18:10:54

我试图在KeyDown事件上绑定多个键以改变bool变量,但我似乎无法弄清楚如何在以下代码中使用左Shift键触发星号/星号键(*):

protected override bool ProcessCmdKey(ref Message msg, Keys keyData)
{
    if (keyData == Keys.Multiply || keyData == (Keys.LShiftKey | Keys.OemQuotes))
    {
        Valgt = true;
    }
}

绑定多个键到KeyDown事件(Shift + *(星号))

这个答案不会是键盘布局不变的,但这将在美欧键盘上奏效。它不是很健壮,但可以适应你的本地布局。

if (keyData == Keys.Multiply || keyData == (Keys.Shift | Keys.D8))
{
    Valgt = true;
}

或者您可以使用Control_KeyPress事件

private void Form1_KeyPress(object sender, KeyPressEventArgs e)
{            
    if (e.KeyChar == '*')
    {
        Valgt = true;
    }
}