NGMsoftware

NGMsoftware
로그인 회원가입
  • 커뮤니티
  • 질문과 답변
  • 커뮤니티

    지식인! 질문에 답변을 달면 포인트가 지급됩니다.

    질문과 답변

    지식인! 질문에 답변을 달면 포인트가 지급됩니다.

    질문에 대한 답변을 3일안에 채택하지 않으면, 자동으로 첫번째 답변자가 채택되고 포인트는 100점이 차감됩니다.

    디자이너 글로번 단축키

    페이지 정보

    본문

    예제를 보면서 글로벌 단축키를 하고있는데요 .

     

       protected override bool ProcessCmdKey(ref Message msg, Keys keyData)
            {
                if (playButton1.ButtonShortcut != Keys.None)
                {
                    KeyEventArgs e = new KeyEventArgs(keyData);

                    if ((e.KeyCode | e.Modifiers) == playButton1.ButtonShortcut)
                    {
                        playButton1.PerformClick();
                        return true;
                    }
                }
                if (stopButton1.ButtonShortcut != Keys.None)
                {
                    KeyEventArgs e = new KeyEventArgs(keyData);

                    if ((e.KeyCode | e.Modifiers) == stopButton1.ButtonShortcut)
                    {
                        stopButton1.PerformClick();
                        return true;
                    }
                }
                return base.ProcessCmdKey(ref msg, keyData);
            }
            private void Form1_Llad(object sender, EventArgs e)
            {
                NGM.Utility.MouseKeyboardManager.HookManager.KeyDown += HookManager_KeyDown;

     
            }

            private void HookManager_KeyDown(object sender, KeyEventArgs e)
            {
                if (playButton1.ButtonShortcut != Keys.None)
                {
                    if ((e.KeyCode | e.Modifiers) == playButton1.ButtonShortcut)
                    {
                        playButton1.PerformClick();
                        e.Handled = true;
                    }
                }
                if (stopButton1.ButtonShortcut != Keys.None)
                {
                    if ((e.KeyCode | e.Modifiers) == stopButton1.ButtonShortcut)
                    {
                        stopButton1.PerformClick();
                        e.Handled = true;
                    }
                }
            }

            private void Form1_Load(object sender, EventArgs e)
            {

            }
        }
    }

     

    이렇게 하엿는데 일반단축키는돼는데 글로벌로는 안돼는데 뭐가문젠지 모르겟어요. 

    예제대로 2949366815_1595662498.9238.png

    이거를 추가하면 아예 에러가 뜹니다. 

    • 네이버 공유하기
    • 페이스북 공유하기
    • 트위터 공유하기
    • 카카오스토리 공유하기
    추천0 비추천0

    댓글목록

      채택답변
    profile_image

    엔지엠소프트웨어님의 댓글

    엔지엠소프트웨어 쪽지보내기 메일보내기 홈페이지 자기소개 아이디로 검색 전체게시물 작성일 Date

    아래 글에서 두번째 예제로 사용하세요^^; HookManager를 이용해야 합니다~!!!
    http://ngmsoftware.com/bbs/board.php?bo_table=tip_and_tech&wr_id=195