«   2024/12   »
1 2 3 4 5 6 7
8 9 10 11 12 13 14
15 16 17 18 19 20 21
22 23 24 25 26 27 28
29 30 31
Archives
Today
Total
관리 메뉴

[위미르 개발팀] Android, iOS , Web 제작

[Windows] C# winform ESC로 창 닫기 본문

개발자료/ETC

[Windows] C# winform ESC로 창 닫기

위미르개발팀 2018. 7. 17. 09:36

특정 키를 눌러서 이벤트를 발생시킬때 Form의 이벤트에서 KeyDown을 찾아서


 private void Form_KeyDown(object sender, KeyEventArgs e)

 {

         if(e.KeyCode == Keys.Escape)

         {

             this.Close();

         }

 }


이러한 코드를 작성하면 될것이라는 생각을 하기 쉽습니다.


하지만 이코드는 원하는대로 작동하지 않습니다.


우리가 원하는대로 작동하게 하려면 해당 폼의 클래스에서 ProcessCmdKey를 오버라이딩 해야합니다.


protected override bool ProcessCmdKey(ref Message msg, Keys keyData)

{

      if(keyData == Keys.Escape)

      {

           this.Close();

           return true;

      }

      return base.ProcessCmdKey(ref msg, keyData);

}


위와 같이 작성하고 ESC를 눌러보면 폼이 닫히는것을 볼수 있습니다.






희 위미르에서는 모바일 어플리케이션(Android/iOS), Web 개발을 해드리고 있습니다.

문의 전화 : 070-4177-3962

Comments