안녕하세요.
GetMousePos는 문서 내의 마우스를 클릭 했을 때 해당 마우스의 위치가 문서 내의 논리적인 위치 값을 알고자 할 때 사용하며 보통 OnMouseLButtonDown 이벤트와 같이 사용합니다.
API 문서 내의 있는 예제를 같이 남겨둡니다.
- Win32 API (GetCursorPos)의 마우스의 위치는 px 단위의 스크린 좌표를 반환하며
GetMousePos는 한글 앱에서 적용되는 DPI (i inch = 7200 HWPUNIT)의 논리적인 좌표값으로 계산되어 반환합니다.
function HwpCtrl_OnMouseLButtonDown(x,y)
{
HwpControl.view_mousex_px.value = x;
HwpControl.view_mousey_px.value = y;
var MousePosSet = pHwpCtrl.GetMousePos(0, 0);
var xrelto = MousePosSet.Item("XRelto");
var yrelto = MousePosSet.Item("YRelTo");
var page = MousePosSet.Item("Page");
var pagex = MousePosSet.Item("X");
var pagey = MousePosSet.Item("Y");
HwpControl.page.value = page + 1;
HwpControl.page_mousex_mm.value = Math.floor(pagex / 283.465); // 1mm == 283.465 HWPUNIT
HwpControl.page_mousey_mm.value = Math.floor(pagey / 283.465);
MousePosSet = pHwpCtrl.GetMousePos(1, 1);
var paperx = MousePosSet.Item("X");
var papery = MousePosSet.Item("Y");
HwpControl.paper_mousex_mm.value = Math.floor(paperx / 283.465);
HwpControl.paper_mousey_mm.value = Math.floor(papery / 283.465);
}
⓵ 마우스 위치보다는 현재 캐럿의 위치를 알고자 한다면 GetPos, SetPos를 사용하면 됩니다.
⓶ 위 설명으로 대신합니다.
감사합니다.