윈폼으로 각종 툴을 만들 때 단축키를 만들어야할 때가 있습니다.(저같은 단축키마니아한테는요 ㅎ)
보통 생각할 때 KeyDown이벤트를 잡아서 처리하면 될 것이라 생각하고 했지만....
안되더라는....그래서 개발자의 신이신 Google에게 어쭈어보았습니다..
Google님께서는 저에게 ProcessCmdKey메소드를 오버라이드 하라고 하더군요..

그래서 해봤습니다..
 
01protected override bool ProcessCmdKey(ref Message msg, Keys keyData)
02{
03        if (!base.ProcessCmdKey(ref msg, keyData)) // 처리가 되지 않았다면
04        {
05                // 처리하고 싶은 것을 처리하도록 코딩한다
06                if (keyData.Equals(Keys.F1))
07                {
08                        //요런식으로?
09                        return true;
10                }
11                else
12                {
13                        return false;
14                }
15        }
16        else
17        {
18                return true;
19        }
20}

간단하죠?ㅎ..

출처 : http://zeru.kr/blog/539 
Posted by 아르다