2012-01-05 2 views
1

저는 C#으로 GUI 응용 프로그램을 만들려고합니다. MS Visual Studio 2010을 사용하고 있습니다. 버튼이 많아서 키보드를 응용 프로그램의 버튼과 연결하려고합니다. 그래서 "w"를 누르면 (예를 들어) 버튼을 활성화하려고합니다. 버튼을 여러 번 눌러 기능을 수행하는 동안 키가 유지되는 동안을 원합니다. 나는 KeyPress, KeyDown 및 KeyUp으로 시도했지만 작동하지 않았다. 나는 NFS에서 자동차를 운전하는 것과 같게 만들고 싶다. 화살표를 위로 올리면 차는 앞으로 나아가지만이 경우에는 현재 버튼을 누르고있는 동안 기능이 실행된다.C# GUI에서 KeyPressed

감사합니다.

답변

1

일부 플래그와 타이머를 사용하여이를 수행 할 수 있습니다.

사용자가 "W"키를 누르면 flag를 keyDown으로 설정 한 다음 타이머를 시작합니다. 경과 된 타이머에서 "keyDown"플래그를 확인하고 해당 키에 대해 지정된 작업을 수행 할 수 있습니다. OnKeyUp 플래그를 다시 설정하고 타이머를 중지합니다.

희망 사항. 질문에 대한 답변입니다.

+0

나는 그것이 효과가있을 것이라고 생각하지만, 그들이 제공 한 이벤트를 사용하는 더 쉬운 방법이 있기를 희망했다. :) – Bankin

+0

MSDN의 [this] (http://social.msdn.microsoft.com/forums/en-US/winforms/thread/6d305d65-7691-4e23-ab1d-cac4cf3d4ba4/) 게시물을 참조하십시오. 그것은 그들이 같은 물건을하고있는 것 같습니다 :) –