안녕하세요?
아래분이 질문하신 마우스 커서의 위치를 알아 내는
방법입니다.
가장 간단하게 마우스의 커서 위치를 알아내는 방법은
컴포넌트 메시지를 이용하는 것이지요...
마우스가 특정 컨트롤 안에 들어오게 되면 CM_MOUSEENTER란
이벤트가 발생합니다. 반대로 마우스 커서가 밖으로 나가게
되면 CM_MOUSELEAVE 이벤트가 발생하고요...
그러니깐 이 메시지들을 컴포넌트 내부에서 가로채서 간단하게
프로시져를 만들면 됩니다.
컴포넌트의 메소드로 다음을 추가하고요...
procedure MouseEnter(var Message: TMessage); message CM_MOUSEENTER;
procedure MouseLeave(var Message: TMessage); message CM_MOUSELEAVE;
위와같이 선언하시구... 함수의 구현부에선...
procedure TFrom1.MouseEnter(var Message: TMessage);
begin
Button1.Caption := 'Mouse Enter Now...';
end;
procedure TForm1.MouseLeave(var Message: TMessage);
begin
Button1.Caption := 'Mouse Leave Now...';
end;
라고 만들면 간단하지만 구현이 되죠...
그 외에 마우스의 커서가 특정 위치에 있는지 검사하는
방법도 그리 어렵지는 않습니다.
답변드린 내용이 부족하시면 다시 질문해 주세요...
그럼...
델피언 시리우스...
|