C++Builder Programming Forum
C++Builder  |  Delphi  |  FireMonkey  |  C/C++  |  Free Pascal  |  Firebird
볼랜드포럼 BorlandForum
 경고! 게시물 작성자의 사전 허락없는 메일주소 추출행위 절대 금지
C++빌더 포럼
Q & A
FAQ
팁&트릭
강좌/문서
자료실
컴포넌트/라이브러리
메신저 프로젝트
볼랜드포럼 홈
헤드라인 뉴스
IT 뉴스
공지사항
자유게시판
해피 브레이크
공동 프로젝트
구인/구직
회원 장터
건의사항
운영진 게시판
회원 메뉴
북마크
볼랜드포럼 광고 모집

C++빌더 Q&A
C++Builder Programming Q&A
[76027] WM_MOUSEWHEEL 이벤트에서 화면 스크린 좌표가 이상하게 들어옵니다..
우로스 [] 1178 읽음    2021-01-27 14:06
서브클래싱 작업을 하고 있습니다.

아래처럼 코딩하였는데, 마우스클릭이나 Move 이벤트에서는 스크린 좌표가 정상적으로 들어오는데,
WM_MOUSEWHEEL 에서는 값이 이상하게 들어옵니다.

어떻게 해줘야 WM_MOUSEWHEEL 이벤트에서도 정상적인 스크린 좌표를 얻을수 있는지 도움 부탁드립니다.
(해당 패널의 좌표값이 아니라, 모니터 전체 영역에서의 좌표값이 들어오는것 같습니다.)

감사합니다.


//---------------------------------------------------------------------------
void __fastcall TForm1::NewProc(Messages::TMessage &Message)
{
    Message.Result = WindowProc(Message.Msg, Message.WParam, Message.LParam);
    OriginalProc(Message);
}
//---------------------------------------------------------------------------
bool __fastcall TForm1::WindowProc(UINT uMsg, WPARAM wParam, LPARAM lParam)
{
    int nCurX, nCurY;
    switch(uMsg)
    {
    case WM_MOUSEWHEEL:  // 스크린 좌표(nCurX, nCurY) 이상한 값이 들어옵니다.
                nCurX = LOWORD(lParam);
        nCurY = HIWORD(lParam);
                break;      
       case WM_MOUSEMOVE:  // 스크린 좌표(nCurX, nCurY) 정상적으로 읽힙니다.
        nCurX = LOWORD(lParam);
        nCurY = HIWORD(lParam);
                break;
        default:
                return FALSE;
        }
     return TRUE;
}
//---------------------------------------------------------------------------


+ -

관련 글 리스트
76027 WM_MOUSEWHEEL 이벤트에서 화면 스크린 좌표가 이상하게 들어옵니다.. 우로스 1178 2021/01/27
76037     Re:WM_MOUSEWHEEL 이벤트에서 화면 스크린 좌표가 이상하게 들어옵니다.. 빌더(TWx) 1331 2021/02/05
Google
Copyright © 1999-2015, borlandforum.com. All right reserved.