02/10/2018, 11:31

[C#] Hướng dẫn bắt sự kiện phím Arrow key (up, down, left, right)

Bài viết hôm nay, mình sẽ hướng dẫn các bạn cách bắt sự kiện các phím Arrow key (phím mũi tên bao gồm: trên, dưới, trái, phải) bằng C# và VB.NET + Để bắt sự kiện cho các phím Arrow key, rất đơn giản các bạn chỉ cần override phương thức ...

Bài viết hôm nay, mình sẽ hướng dẫn các bạn cách bắt sự kiện các phím Arrow key (phím mũi tên bao gồm: trên, dưới, trái, phải) bằng C# và VB.NET

+ Để bắt sự kiện cho các phím Arrow key, rất đơn giản các bạn chỉ cần  override phương thức ProcessCmdKey()

Code C#:

protected override bool ProcessCmdKey(ref Message msg, Keys keyData)
{
	//handle your keys here
}

Code VB.NET:

Protected Overrides Function ProcessCmdKey(ByRef msg As Message, ByVal keyData As Keys) As Boolean
	'handle your keys here
End Function

Source code bắt sự kiện Arrow key trong C#

protected override bool ProcessCmdKey(ref Message msg, Keys keyData)
{
	//capture up arrow key
    if (keyData == Keys.Up )
    {
        MessageBox.Show("You pressed Up arrow key");
        return true;
    }
	//capture down arrow key
    if (keyData == Keys.Down )
    {
        MessageBox.Show("You pressed Down arrow key");
        return true;
    }
	//capture left arrow key
    if (keyData == Keys.Left)
    {
        MessageBox.Show("You pressed Left arrow key");
        return true;
    }
	//capture right arrow key
    if (keyData == Keys.Right )
    {
        MessageBox.Show("You pressed Right arrow key");
        return true;
    }
    return base.ProcessCmdKey(ref msg, keyData);
}

Source code bắt sự kiện arrow key trong vb.net

Protected Overrides Function ProcessCmdKey(ByRef msg As Message, ByVal keyData As Keys) As Boolean
    'detect up arrow key
    If keyData = Keys.Up Then
        MessageBox.Show("You pressed Up arrow key")
        Return True
    End If
    'detect down arrow key
    If keyData = Keys.Down Then
        MessageBox.Show("You pressed Down arrow key")
        Return True
    End If
    'detect left arrow key
    If keyData = Keys.Left Then
        MessageBox.Show("You pressed Left arrow key")
        Return True
    End If
    'detect right arrow key
    If keyData = Keys.Right Then
        MessageBox.Show("You pressed Right arrow key")
        Return True
    End If
    Return MyBase.ProcessCmdKey(msg, keyData)
End Function

Have Fun :)

Tags: eventkeyboard
0