오토핫키 커뮤니티

질문
2015.05.24 19:56

이미지서칭 시간함수 질문

조회 수 1587 추천 0 댓글 12

안녕하세요.

<만들고자 하는 소스>

1. 30초 동안 특정이미지를 찾아라.

2. 찾았으면 다음 항목을 실행하라.


질문 위 소스를 만드려면 settimer을 사용해야하는 건가요? 아니면 다른 함수가 있나요?

만약 셋타임을 사용하면 아래 처럼 사용하는게 맞나요?


settimer, A, 30000


A:

ImageSearch, m1, m2, %X%, %Y%, %X2%, %Y2%, *50 C:\auto\jew.bmp

if (errorlevel=0)

{

? gosub, 다음

}

return


다음:

settimer, A, off

ImageSearch, m1, m2, %X%, %Y%, %X2%, %Y2%, *50 C:\auto\jew2.bmp

if (errorlevel=0)

{

? gosub, 다음2

}

return


다음:


  • 강재승 2015.05.24 19:59

    너무어렵다 ...

  • theruin 2015.05.24 20:32

    settimer 는 지정시간 간격 마다 실행시켜 주는겁니다. 원하시는게 아닐겁니다.

    loop 사용해서 이미지서치를 하시고 찾으면 다음 실행하시게 하면되고?

    loop 탈출 조건을 시간 카운트해서 30초 되면 break 해주시면될거같네요.

  • 제발등업좀2 2015.05.24 21:19
    f1::
    if (img_time("\image\aa.PNG",10)=1)
    {
    MsgBox,찾앗다
    MouseMove,x2,Y2
    }
    return
    img_time(img_name1,time1)
    {
    global ActiveID
    WinGetPos, winX, winY, winW, winH, %ActiveID%
    Loop,%time1%
    {
    ImageSearch, oX, oY, winX, winY, winX+winW, winY+winH, *100 %A_ScriptDir%\%img_name1%
    If ( ErrorLevel = 0)
    {
    imgX1 := oX
    imgY1 := oY
    return 1
    }
    else If ( ErrorLevel = 1)
    {
    return 0
    }
    sleep,1000
    }
    }

    대충 이런식으로 해도 될껏같은데요?
    sleep로 시간을 주고 루프를돌리면.. 10번이면 10초.20번이면 20초동안 찾지않을까요?
  • 마토깽 2015.05.25 18:29
    바빠서 이제야 댓글 봅니다.
    전체적인 소스랑 댓글달아주신 내용보고 어떤 원리인지 알겠는데,
    제가 함수나 변수 해석에 대해서 무지합니다.
    예를 들어
    if(img_time("\image\aa.PNG",10)=1) ;== 이것은 무엇 무엇을 지정하였다.
    global ActiveID ;== 글로벌? 변수를 지정?
    위 두줄 처럼 해석 할 줄 알아여 소스를 제대로 공부해볼텐데.. ㅠㅠ
    혹시 http://v1.autohotkey.co.kr/commands.php 여기처럼 명령어 모음집 사이트 아시는데 있을까요?
  • 제발등업좀2 2015.05.25 19:52
    싸이트는 머르겠고 ㅋ. 전 테일스타 아니면. 개인적인카페에서 배운터라..
    함수는
    함수명
    과 함수내용으로 이루어져있습니다

    함수명은 함수를 불러오는 명령어라고생각하시면 됩니다.
    함수내용은 그함수가 실행해야할 명령어라고 생각하시면 되구요

    그리고 함수내에서의뱐수는 스택틱 변수라하여 함수내에서만 사용하는변수입니다.? 글로벌변수라는건 스크립트전체에 사용하는 변수이구요 음.. 저또한 컴용어엔 좀무지하여.. 자세히 설명드리기 힘드네요 걍 이런거다 라고만 알고있어서요 ㅠ.ㅠ
  • 제발등업좀2 2015.05.25 20:04
    생각해보니 제가 만든함수는 .. 10번만 찾고마네요 ㅡㅡ.. 시간계산을 다시해야겠네요 ㅋ.. 쩝... 아니면 루인말씀처럼 시간을저장하고.. 넘으면 브레이크를 걸던지요..
  • 제발등업좀2 2015.05.24 21:23
    정답은 아니지만. 참고하시길.. 아니면 루인님 말씀처럼 현재시간을 변수에 저장하고 그시간과 현재시간을 대비하여.. 얼마나 흘러는지 확인하고..루프를깨면됳것같은데요
  • 단백질 2015.05.25 14:40

    StartTime := A_TickCount


    loop

    {

    이미지서치

    if에러레벨

    {

    ElapsedTime := A_TickCount - StartTime

    if (if ElapsedTime >= 10000 ) ;---------------1000=1초 예시로적힌것은 10초동안

    진행내용입력

    break

    }

    }

    에러레벨1

    {

    }

    리턴


    이게 순서가 맞는지 모르겠군요

  • 마토깽 2015.05.25 18:31
    제가 뭘 잘못했는지 안되네요.
    어떻게 소스 위치 바꾸면서 해봤는데 작동은 됩니다. 근데 10초동안 이미지를 못찾으면 "못찾았다" 메세지 박스를 띄우는 소스를 구현했는데, 4초뒤에 메세지가 뜨네요.
  • 제발등업좀2 2015.05.25 19:37
    위에 소스는 좀잘못되어네요.. 이미지를 찾았는데... 왜 10초뒤에 브레이크를 거는건지 ? 저기 시간 계산 부분 을 루프밖으류 빼세요
    루프
    {
    이미지서치
    에러레벨
    {
    실행문
    }
    시간계산if
    {
    브레이크
    }
    }
    리턴
    이런식으로 하셔야합니다
  • 단백질 2015.05.25 20:43
    집에와서 확인해보니 제가썻던건
    아래같이 되어있네요
    오핫 입문 일주일차라 기억을 제대로 못해서;;

    광고닫기:
    startTime:=A_TickCount
    loop
    {
    Imagesearch, ax, ay, %X%, %Y%, %Width%,%Height%, *50 %A_ScriptDir%\Image\광고닫기.png
    If errorlevel = 0
    {
    Move:=28|473<<16
    gosub, 클릭
    Sleep 1000
    Move:=745|470<<16
    gosub, 클릭
    sleep 1000
    if (A_TickCount = startTime >= 60000)
    break
    }
    }
    If errorlevel = 1
    {
    sleep 100
    }
  • 제발등업좀2 2015.05.29 16:07

    startTime:=A_TickCount ; <<--startTime에 시간을 기록
    loop
    {

    if (A_TickCount-startTime>2000) ;;기준으로 2초 뒤에 루프탈출 하라 (1000단위가 1초)
    {
    break
    }
    ImageSearch, oX, oY, 1, 1, A_ScreenWidth, A_ScreenHeight, *50 %A_ScriptDir%\JRimg\event\img1.png
    If ( ErrorLevel = 0)
    {
    msgbox,찾앗다

    break
    ??????????? }
    else if ( ErrorLevel = 1)
    {
    msgbox, 못찾았다 ㅠㅠ
    }
    }
    return

    이렇게 쓰시면 될듯합니다

    2초 뒤에 루프를 탈출하니... 시간 조정 하시면 될껏같구요.. 루프 탈출말고도 다른 명령어 쓰면 다른 명령어를

    실행하겠죠 ???? 암튼 걍 참고만 하시길 바랍니다.


List of Articles
분류 제목 글쓴이 최근변경 추천
질문 컴맹 초짜가 블택에서 아주 간단한 매크로 만들고 싶은... 3 라티엠 2015.06.01 0/0
질문 매크로를 돌리면서 꼬였을때 10 속쓰리다 2015.06.07 0/0
질문 제가 만들고자 하는 프로그램 입니다.(많은 능력자님들... 26 헐키 2015.06.01 0/0
질문 RegExMatch 에 변수 지정이 가능할까요? 2 영웅거북 2015.05.29 1/0
질문 특정문자옆 문자찾기 알고싶습니다 7 영웅거북 2015.05.29 0/0
질문 레이븐 오토핫키 짜는중인데 도와주세요 ~ 30 민서s2아빠 2015.07.08 0/0
질문 smartgui 공식 사이트가 어디인가요"? 2 응응s 2015.05.28 0/0
질문 컴퓨터 언어는 아무것도 모르는사람인데... 11 문의드립니다 2015.06.03 0/0
질문 픽셀서치에관한건데요 2 단백질 2015.05.29 0/0
질문 winhttp.send() 이 문구가 너무 오래걸립니다. 3 _Crash 2015.05.28 1/0
자유 세나 매크로 머리가 멍청한건지 어려운건지 15 스파크 2016.11.20 2/0
질문 이미지서칭 시간함수 질문 12 마토깽 2015.06.07 0/0
질문 COM.ahk 활용.. 4 JgH 2015.05.24 0/0
질문 바탕화면에 1.jpg 라는파일을 clipboard 에 저장하는법 1 _Crash 2015.05.23 0/0
질문 winhttp 에서요 1 _Crash 2018.12.05 0/0
질문 한번더 문의드립니다 ㅠㅠ 7 야쿠르트 2015.05.23 0/0
질문 이미지 서치 우선순위 설정 문의드립니다. 8 야쿠르트 2015.05.23 0/0
질문 특정키를 누르면 다른 키매크로가 정지되게 하는 법 알... 5 빈스3678 2015.05.25 0/0
질문 스크립트 좀 여쭤볼게요. 5 빈스3678 2015.05.22 0/0
자유 PushFile 혹시 모르시는 분들이 있을까봐 2 외치기 2015.05.29 0/0
Board Pagination Prev 1 ... 165166167168169170171172173 ... 209 Next
/ 209

전체 최신 인기글

전체 주간 인기글