안녕하세요,
hwpctrl api 문서를 보다가 GetMousePos 부분이 있길래 문의 드립니다.
-
해당 함수로 구해진 x,y 좌표를 저장했다가 다시 해당 위치로 캐럿을 이동하거나 하는 방법이 있을까요?
-
이 함수는 어떤 경우 사용을 위해 만들어진걸까요?
안녕하세요,
hwpctrl api 문서를 보다가 GetMousePos 부분이 있길래 문의 드립니다.
해당 함수로 구해진 x,y 좌표를 저장했다가 다시 해당 위치로 캐럿을 이동하거나 하는 방법이 있을까요?
이 함수는 어떤 경우 사용을 위해 만들어진걸까요?
안녕하세요.
GetMousePos는 문서 내의 마우스를 클릭 했을 때 해당 마우스의 위치가 문서 내의 논리적인 위치 값을 알고자 할 때 사용하며 보통 OnMouseLButtonDown 이벤트와 같이 사용합니다.
API 문서 내의 있는 예제를 같이 남겨둡니다.
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를 사용하면 됩니다.
⓶ 위 설명으로 대신합니다.
감사합니다.
네. 문서 API 잘 확인 했습니다.
마우스 컨트롤해서 움직여보면 되겠네요.
감사합니다.