Blog Content

    티스토리 뷰

    28.C#_WinForm - 키 다운 이벤트 ( KeyDown Event)

    반응형

    키보드에서 입력 방향으로 원 그림이 움직이는 간단한 예제입니다.


            메뉴추가 :
                    FrmMain - 샘플 - 키 다운 이벤트

    FrmKeyDown 이벤트 속성
    FrmKeyDown폼에 대해서 이벤트 속성탭에서 이벤트를 추가합니다.
    모양 - Paint 이벤트 : 컨트롤을 다시 그려야 할 때 발생하는 이벤트
    키 - KeyDown 이벤트 : 키를 처음 누를때 발생하는 이벤트

    FrmKeyDown.cs
    public partial class FrmKeyDown : Form
    {
            private Point p; //포인트 선언
            public FrmKeyDown()
            {
                InitializeComponent();
                p.X = 10; p.Y = 10;
            }

            //폼에서 키보드가 입력 될 때
            private void FrmKeyDown_KeyDown(object sender, KeyEventArgs e)
            {
                    switch (e.KeyCode)
                    {
                    case Keys.Left: p.X -= 10;   //Invalidate(); = 다시 그리려주기
                            Invalidate(); break;
                    case Keys.Right: p.X += 10;
                            Invalidate(); break;
                    case Keys.Up: p.Y -= 10;
                            Invalidate(); break;
                    case Keys.Down: p.Y += 10;
                            Invalidate(); break;
                    default :
                            break;
                    }
            }

            private void FrmKeyDown_Paint(object sender, PaintEventArgs e)
            {
                    //검은색 원 그림
                    e.Graphics.FillEllipse(Brushes.Black, p.X - 8, p.Y - 8, 16, 16);
            }
    }

    결과확인

    [그림28-1]

    28WinFrmMain.zip
    다운로드

     

     

    반응형

    Comments