매크로

정보
2015.01.16 22:06

지니모션 드래그 함수

조회 수 513 추천 1 댓글 1

저도 드래그 때문에 약간 고생했었는데요.?


드래그는 사람이 움직이듯 for문으로 좌표를 증가시키면서 해줘야하는게 포인트 였습니다.


근데 오핫에는 for문이 없나요?? 오핫도 정보가 은근히 없더라구요 ㅠ_ㅠ


SysGet, TitleBorderWeight, 32 ; 보더두께값을 변수에저장

SysGet, TitleWeight, 4 ? ?; 제목표시줄두께값을 변수에 저장


WinGetPos, gX, gY, gWidth, gHeight, %title% ; 해당윈도우의 좌표와 크기를 얻는다.


pmovedrag(1, 612, 372, 612, 183, "위쪽", "왼쪽버튼", 1, 1000, FindTitle)


;---------------------------------------------------------------------

;[pmovedrag] postmessage 드래그

; cp=클라이언트 좌표인지 여부

; x,y=시작좌표

; x1,y1=끝좌표

; direction=드래그방향(왼쪽,오른쪽,위쪽,아래쪽)

; nbutton=왼쪽버튼or오른쪽버튼

; pushdelay=누름딜레이

; leavedelay=드래그 끝난후 딜레이

; titlename=창이름

;---------------------------------------------------------------------

pmovedrag(cp, x, y, x1, y1, direction, nbutton, pushdelay, leavedelay, titlename)

{

Global TitleBorderWeight, TitleWeight, gX, gY

; 윈도우 좌표일 경우

if cp = 0

{

x := x - TitleBorderWeight - gX

y := y - TitleWeight - gY

x1 := x1 - TitleBorderWeight - gX

y1 := y1 - TitleWeight - gY

}

; 클라이언트 좌표일 경우

else

{

x := x - TitleBorderWeight

y := y - TitleWeight

x1 := x1 - TitleBorderWeight

y1 := y1 - TitleWeight

}

N:=x|y<<16 ? ?;<-좌표를 16진수로 변환

N1:=x1|y1<<16

;PostMessage로 드래그 하기 위해선 이걸 해줘야한다. (c++버전 코드)

;LPARAM lparam;

;lparam = (HTRIGHT | (WM_NCMOUSEMOVE << 16))?


param := 11 | (0xA0 << 16)

PostMessage, %param%,, %N%,,%titlename%

if (nbutton = "왼쪽버튼") ; 왼쪽버튼

{

down = 0x201

up = 0x202

}

else ; 오른쪽 버튼

{

down = 0x204

up = 0x205

}

dragspeed = 15 ; 이걸로 드래그 속도를 정한다.?

PostMessage, %down%, , %N%, , %titlename% ; 왼쪽or오른쪽 버튼 누른 상태

if (direction = "오른쪽")

{

ncount := (x1 - x) // dragspeed

loop, %ncount%

{

nx := x + (A_Index * dragspeed)

N2:=nx|y<<16

PostMessage, 0X200, 1, %N2%, , %titlename% ; 마우스 이동

sleep, 1

}

}

else if (direction = "왼쪽")

{

ncount := (x - x1) // dragspeed

loop, %ncount%

{

nx := x - (A_Index * dragspeed)

N2:=nx|y<<16

PostMessage, 0X200, 1, %N2%, , %titlename% ; 마우스 이동

sleep, 1

}

}

else if (direction = "아래쪽")

{

ncount := (y1 - y) // dragspeed

loop, %ncount%

{

ny := y + (A_Index * dragspeed)

N2:=x|ny<<16

PostMessage, 0X200, 1, %N2%, , %titlename% ; 마우스 이동

sleep, 1

}

}

else if (direction = "위쪽")

{

ncount := (y - y1) // dragspeed

loop, %ncount%

{

ny := y - (A_Index * dragspeed)

N2:=x|ny<<16

PostMessage, 0X200, 1, %N2%, , %titlename% ; 마우스 이동

sleep, 1

}

}

PostMessage, %up%, , %N1%, , %titlename% ; 왼쪽or오른쪽 버튼 뗌

PostMessage, %param%,, %N1%, ,%titlename%

sleep, leavedelay

}




List of Articles
분류 제목 글쓴이 최근변경 추천
정보 이미지 서치 비활성 클릭 4 프린치크 2014.11.20 0/0
정보 이미지 서치를 했는데 모서리쪽만 클릭을 해서 많이 속... 2 미치 2014.09.22 0/0
정보 이미지 서치시 범위찾는 스크립트입니다 beat 2015.06.30 0/0
정보 이미지서치 후 비활성 클릭 17 lidmt 2016.07.02 0/0
정보 이미지서치시 좌표 관리시 소소한 팁. 1 파이썬공부중 2019.06.30 0/0
정보 이미지파일 세밀하게 캡쳐하기 12 부비수달 2017.08.13 0/0
정보 일정이미지 발견시 다른이미지서치 할수있나요? 2 세나블텍 2015.04.16 0/0
정보 저번에 올려드린 홈페이지보다 더 유용한 사이트 5 침묵의고요 2018.02.07 2/0
정보 제가 쓰는 비활성 드래그입니다.. 10 제발등업좀2 2021.01.23 0/0
정보 제가 쓰는 픽셀피커입니다(스크립트) 6 와이로 2017.02.11 3/0
정보 제작지원도구 5 따기따기 2014.12.12 2/0
정보 좌표개념 이해하기... 참고 그림.. 6 제발등업좀2 2016.05.26 1/0
정보 지니모션 postmessage 미작동 관련 3 무사시무 2014.10.11 0/0
정보 지니모션 드래그 함수 1 연구원 2015.01.21 1/0
정보 지니모션 디바이스(타이틀) 검색 ddl 소스 9 핸콕 2015.10.11 3/0
정보 지니모션 안보이게 하고 매크로 동작 24 Works 2015.04.10 0/0
정보 지니모션 테마 및 윈도우 버전 상관없이 해상도 변경하... 로뎀나무 2015.01.16 2/0
정보 초보가 초보에게;; 핫키 사용법 9 악동주성 2024.07.11 4/0
정보 쿠키런 매크로(ImageSearch활용) 입니다. 10 멕아리 2015.02.09 1/0
정보 타이머 샘플입니다. 3 모바게 2014.11.28 1/0
Board Pagination Prev 1 23456 7 Next
/ 7

전체 최신 인기글

전체 주간 인기글