How to judge whether left shift or right shift is pressed in keydown event in C#

 public partial class Form1 : Form 

    {

        [System.Runtime.InteropServices.DllImport("user32.dll")] 

        private static extern short GetAsyncKeyState(Keys vKey); 

        public Form1() 

        {

            InitializeComponent();

        }

  

        private void Form1_KeyDown(object sender, KeyEventArgs e) 

        {

            if (e.KeyCode == Keys.ShiftKey) 

            {

                if (Convert.ToBoolean(GetAsyncKeyState(Keys.LShiftKey))) 

                    MessageBox.Show("Left"); 

                if (Convert.ToBoolean(GetAsyncKeyState(Keys.RShiftKey))) 

                    MessageBox.Show("Right"); 

            }

        }

    }

 

Guess you like

Origin http://43.154.161.224:23101/article/api/json?id=325074983&siteId=291194637