Microsoft MVP성태의 닷넷 이야기
선생님 마우스 클릭이벤트 질문이 있습니다. [링크 복사], [링크+제목 복사]
조회: 1198
글쓴 사람
꿀주세요 (shdmlcjs at naver.com)
홈페이지
첨부 파일
 
선생님 초급개발자로서 이번에 책을 구입하고

마우스 클릭이벤트를 만들어봤는데

마우스를 클릭했을때 X, Y 좌표값을 가져오는걸 만들고있습니다.

NuGet 패키지에서 Hook 마우스 패키지를 설치해서 만들었구

Hook.GlobalEvents().MouseClick += MouseClickAll; 이런식으로 호출해서 사용하는데

프로그램 종료할때까지 계속 이벤트가 살아있는데 어떻게 해제시키는 모르겠습니다 ㅠㅠ

Hook.GlobalEvents().MouseClick -= MouseClickAll; 요렇게 -= 이라고 쓰고 해제시키는거 아닌가요? ㅠㅠ

private void MouseClickAll(object sender, MouseEventArgs e)
        {
            
            try
            {
                POINT p;
                if (GetCursorPos(out p))
                {
                    lbX.Text = Convert.ToString(p.X);//
                    lbY.Text = Convert.ToString(p.Y);
                }

            }
            catch(Exception ex)
            {
                ex.Message.ToString();
            }

        }

만든 이벤트 함수입니다...









[최초 등록일: ]
[최종 수정일: 3/30/2022]


비밀번호

댓글 작성자
 



2022-03-30 01시13분
작성하신 그 간단한 예제 코드를 담은 프로젝트를 압축해서 올려주세요.
정성태
2022-04-06 01시15분
[꿀주세요] 선생님 아무리 올릴려고해도 올라가지지가 않습니다 ㅠㅠ
다른방법은 없을까요?? 메모장에 적거나 그냥 코드자체를 올려드릴까요?
[손님]
2022-04-06 02시00분
압축하실 때, /bin, /obj 등의 폴더는 모두 삭제해야 합니다. 텍스트 파일만 있는 상태로 압축해서 올리시면 됩니다.
정성태
2022-04-11 05시25분
IKeyboardMouseEvents globalEvents = Hook.GlobalEvents();

-- attach --
globalEvents.KeyDown += keyRecorder.Keyboard_KeyDown;
globalEvents.KeyUp += keyRecorder.Keyboard_KeyUp;
globalEvents.MouseDownExt += MouseEvents_MouseDownExt;
globalEvents.MouseMoveExt += MouseEvents_MouseMoveExt;

-- detach --
globalEvents.KeyDown -= keyRecorder.Keyboard_KeyDown;
globalEvents.KeyUp -= keyRecorder.Keyboard_KeyUp;
globalEvents.MouseDownExt -= MouseEvents_MouseDownExt;
globalEvents.MouseMoveExt -= MouseEvents_MouseMoveExt;
globalEvents.Dispose();
globalEvents = null;

실제 상용툴에 적용된 코드 입니다.
도움이 되실지 모르겠네요
SeungHwan Cha

1  2  3  [4]  5  6  7  8  9  10  11  12  13  14  15  ...
NoWriterDateCnt.TitleFile(s)
5687규철7/6/2022671개발업무 문서 관리 방법 문의 [3]
5686권용완7/5/2022580Linq Entites 에서 string[]에 담긴 데이터를 제외하는 방법 문의 [3]
5685차가워7/4/2022630메모리 선택 문의 [1]
5683김민혁7/1/2022713HttpWebRequest POST 전송 관련해서 질문 드립니다. [4]파일 다운로드1
5682김기헌6/20/2022733안녕하세요 서로 다른 스레드에서 동일 인스턴스의 메소드를 호출할때 질문드립니다 [2]
5681미래...6/19/2022662VC++ 빌드 관련 문의 (h파일이 바뀌었는데 컴파일을 꼭 하지 않아도 되나요?) [1]
5680Sy...6/12/2022965EXE파일에 속성값 추가하는 방법이 있나요? [2]파일 다운로드1
5679차가워6/8/2022731tcpip socket 여러 랜카드 사용 시 연결 문의 [1]
5678차가워6/7/2022708원자적 실행 문의 [3]
5677장성욱6/7/2022674블루투스 포트와 시리얼포트 연결시 에러 [2]
5675차가워5/29/20221465윈도우설정 프로세스사용계획 옵션과 c# 스레드 [1]
5674민우5/29/2022965C++ 의 RTTI, Reflection 으로 객체 멤버변수, 멤버함수 목록 추출 문의 [2]
5673조은현5/25/20221240안녕하세요 선생님! c#에서 TCP/IP의 keep alive 기능의 사용법에 대해서 질문드리고 싶어요! [2]파일 다운로드2
5672ga...5/23/20221124안녕하세요 GC를 일시적으로 중단시키는 방법이 있을까요? [5]
5671한예지5/20/20221050델리게이트와 함수포인터 선언 시, 차이점 질문 있습니다. [3]
5670유필재5/20/20221130c#에서 현재프로그램에서 사용한 인터넷사용량 측정이 가능한가요? [3]
5669한예지5/19/2022900이벤트 접근 제한자 질문 있습니다. [2]
5667ocm5/14/20221014c# 콜백 메서드 [2]
5666김호영5/13/20221033c# winform에서 svg 이미지 사용 [1]
5665장성욱5/11/20221151C# 타이머 관련 질문 [5]
5664차가워5/11/2022983아스키로 구성된 바이트를 long으로 변환 문의 [1]
5663김석규5/11/2022916VSTO를 이용해 엑셀데이터를 저장할때, 최종 입력값을 인식하지 못합니다. [2]
5662한예지5/10/2022884혹시 사이트 회원가입은 어떻게 하는 것인가요? [1]
5661한예지5/10/2022954for문 안에 await가 있는 경우 질문드립니다. [3]
5660tky5/10/2022834특정 작업을 멀티스레딩으로 처리 할 경우 어떤 방법이 가장 효율적일까요? [2]
5659한예지5/9/2022898Task, TaskAwaiter 질문 있습니다. [3]
1  2  3  [4]  5  6  7  8  9  10  11  12  13  14  15  ...