Microsoft MVP성태의 닷넷 이야기
선생님 마우스 클릭이벤트 질문이 있습니다. [링크 복사], [링크+제목 복사]
조회: 4508
글쓴 사람
꿀주세요 (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분
[꿀주세요] 선생님 아무리 올릴려고해도 올라가지지가 않습니다 ㅠㅠ
다른방법은 없을까요?? 메모장에 적거나 그냥 코드자체를 올려드릴까요?
[guest]
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)
5648주니어개...4/13/20223863컴파일된 코드를 원시코드로 바꾸려면 어떻게해야하나요? [1]파일 다운로드1
5647장성욱4/7/20223905코어지정 CPU사용률 관련 질문 [1]
5646서형주4/6/20223919List에 여러개의 class 객체를 만들어 넣을때, 객체의 method들도 같이 생성되어 메모리를 차지하나요? [1]
5645김인태4/6/20223568윈도우즈 서버의 AD 계정 생성 조건이 있을까요? [1]
5644ㅇㅇ4/6/20224328c# 프로그램을 이용하여 리눅스상에 파일 생성이 가능한가요? [1]
5643유필재4/5/20224196TCP클라이언트 연결 및 통신관련하여 문의드려요 [1]
5642차가워4/4/20224443UdpClient 패킷 수신 문의 [4]
5641장성욱4/4/20224853코어 할당 및 cpu 부하테스트 질문 [7]
5640icoo...4/4/20224395웹가든에서 메모리 동적 업데이트 방법 [1]
5639차가워4/4/20224287c++ 서버 c# 클라이언트 호환 문의 [1]
5638초급4/3/20224588c# sql server 연동 [1]
5637따봉이4/1/20224854Winform Form Load 후 자동 캡쳐관련 [1]파일 다운로드1
5636김철순3/31/20224840WPF에서 Richtext의 View 문의 [5]
5635guest3/30/20224865안정적인 pinning이 가능하네요. [3]파일 다운로드1
5633꿀주세요3/30/20224508선생님 마우스 클릭이벤트 질문이 있습니다. [4]
5632김현수3/30/20224842Remote Desktop으로 접속시 WPF UI 가 다시 그려지는 이벤트를 막을 수 없을까요? [3]
5631김기헌3/24/20224471WPF 컨트롤의 그래픽 처리관련 질문드립니다 [2]파일 다운로드1
5630장성욱3/24/20224299로깅관련 질문입니다. [2]
5629감사합니...3/23/20224557함수에서 예외가 발생하면 try ~ catch처리기를 찾을 때 까지 상위 함수로 계속 올라가나요? [2]
5628홍길동3/23/20225195질문드립니다. [2]파일 다운로드1
5626연준혁3/21/20224426안녕하세요. [3]
5625jaew...3/18/20225360c# 8.0 도서를 구입한 사람입니다. [1]
5624초보자3/17/20224328람다 캡처 관련 문의 [2]
5623한예지 donator3/15/20224700인터프리터 원리가 궁금합니다. [4]
5622김민아3/8/20224636const와 readonly의 명확한 차이가 이게 맞나요? [2]
5621장성욱3/8/20224439c# 로그 관련 질문 [1]
1  2  3  4  5  6  7  8  9  10  11  [12]  13  14  15  ...