매크로

조회 수 314 추천 0 댓글 4

오토핫키 갓 입문이라 이것저것 하고있었는데



ㅡㅡㅡㅡㅡㅡㅡㅡㅡㅡㅡㅡㅡㅡㅡㅡㅡㅡㅡㅡㅡㅡㅡㅡㅡㅡㅡㅡㅡㅡㅡㅡ

F1::

Loop

{

if (상태 = 하이)

{

gosub, 1

}


else if (상태 = 바이)

{

gosub, 2

}

}

return







1:

sendinput, {enter}

sleep 100

sendinput, {1}

sleep 100

return


2:

sendinput, {enter}

sleep 100

sendinput, {2}

sleep 100

return


F2::

상태 := 하이

return


F3::

상태 := 바이

return

ㅡㅡㅡㅡㅡㅡㅡㅡㅡㅡㅡㅡㅡㅡㅡㅡㅡㅡㅡㅡㅡㅡㅡㅡㅡㅡㅡㅡㅡㅡㅡ


상태가 하이 일때 1을 출력하고

상태가 바이 일때 2를 출력하는걸 만든건데


이걸 실행시키고 


F1을 누르면 1이 계속 타이핑 되다가


F3을 누르면 상태가 바이로 변경되서


2가 출력되야대는데



001: Return (1.83)

002: Loop

004: if (상태 = 하이)  

006: Gosub,1

022: SendInput,{enter}

023: Sleep,100 (0.11)

024: SendInput,{1}

025: Sleep,100 (0.11)

026: Return

007: }

013: }

004: if (상태 = 하이)  

006: Gosub,1

022: SendInput,{enter}

023: Sleep,100 (0.02)

040: 상태 := 바이                  (F3을 누름)

041: Return (0.09)

024: SendInput,{1}

025: Sleep,100 (0.11)

026: Return

007: }

013: }

004: if (상태 = 하이)     

006: Gosub,1

022: SendInput,{enter}

023: Sleep,100 (0.11)

024: SendInput,{1}

025: Sleep,100 (0.11)

026: Return

007: }



빨간색 색칠한 글씨부분보면 F3을 눌러서 상태를 바이로 변경했는데


왜 계속 if문은 상태 하이 인 상태로 도는건가요?


제가 if문 이해를 잘 못하는건가요?


  • slka 2018.09.29 19:06

    F1::

    Loop

    {

    if (상태 = 하이)

    {

    gosub, 1

    }


    else if (상태 = 바이)

    {

    gosub, 2

    }

    }

    return

    부분에서 


    else if (상태 = 바이)

    if (상태 = 바이)

    로 만들면 

    1

    2

    1

    2

    로 출력이 되네요


    상태는 하이 or 바이 둘중 하나인데


    else if를 넣는것과 if로 한것과 왜 차이가 있나요?

  • 허간지 2018.10.01 16:15

    이렇게해보세요


    #SingleInstance force


    F1::


    상태 = 하이


    Loop

    {

    if (상태 = "하이")


    {

    SplashTextOn, ,30 , 제목 없음 ,"하이"

    }



    else if (상태 = "바이")


    {

    SplashTextOn, ,30 , 제목 없음 ,"바이"

    }

    sleep,500

    }


    return



    F4::

    exitapp

     


    F2::


    상태 = 하이


    return




    F3::

    상태 = 바이

    return



    참고로

    상태 := 하이 대입은 잘못된걸로 알고있습니다. : 대입은 숫자일떄만 가능한걸로..
  • Hangoon 2018.10.02 11:32

    변수 값 정의할때 := 기호 다음은 표현식이 들어갑니다

    if구문에서도 조건문을 괄호안에 작성하면 표현식이 들어가야 합니다


    표현식에서 문자열은 따옴표로 둘러쌓아야 합니다. 그렇지 않으면 해당 문자열을 이름으로 가진 변수를 참조하게 됩니다.


    상태:=하이

    상태:=바이


    하이 나 바이 란 이름의 변수안에는 아무런 값이 없기 때문에 저 두 명령의 결과는 같습니다 (상태 변수 안에 값은 NULL 로 변동이 없음)


    원하시는대로 되려면

    상태:="하이" 와 같은 형식이 되어야 하며


    if문의 조건문도 (상태="하이") 와 같은 형식이 되어야 합니다.


    표현식은 기본중에 기본입니다. 오토핫키 공식 홈페이지에 가면 표현식 부분을 따로 떼어서 길게 설명하고 있습니다.

    소스포지에 한글 번역 페이지도 있으니 (본 게시판 공지 링크) 가서 깊게 공부해보세요.

    오토핫키 코딩에 있어서 두번세번 강조해도 지나치지 않을만큼 중요한 사항입니다

  • sama 2018.10.16 15:50
    변수 인자 표현식 중요합니다.. 저도 이거때문에 소스 몇전 갈아 덮었습니다 흑흑

List of Articles
분류 제목 글쓴이 최근변경 추천
정보 Autohotkey에서 함수와 ByRef 사용에 대해... 12 류Macro 2015.07.12 1/0
자유 ahk 환경의 중요성.. 3 znel 2014.11.19 0/0
정보 이미지 서치 비활성 클릭 4 프린치크 2014.11.20 0/0
정보 비활성 클릭과 클릭 좌표의 오차에 대해서 3 lidmt 2016.04.07 2/0
질문 비활성 클릭관련하여 질문이 있습니다. 5 묵치기 2014.11.22 0/0
자유 (세븐나이츠)쌩초보가 만든 매크로 공유합니다.(이미지... 12 swksd 2015.04.24 2/0
정보 폴더내 이미지 찾는 Loop 5 묵치기 2014.12.01 0/0
질문 투명 배경으로 이미지 서치가 가능한가요? 9 묵치기 2014.11.23 0/0
질문 좌표 설정 질문드립니다 2 초이 2014.11.21 0/0
자유 (세븐나이츠) 뿌듯부듯.. 11 swksd 2015.11.14 1/0
자유 마우스 클릭 좌표 질문입니다... 3 추천캐릭 2014.11.22 0/0
질문 오랫만에 와서 질문하나 할게요;; 12 으뜸어린이 2014.11.26 0/0
질문 크롬에서는 controlclick, PostMessage 사용하면 활성... 2 시에 2014.11.22 0/0
질문 오핫 GUI 입력값 변수사용에 대한 질문입니다. 3 레이븐 2014.11.24 0/0
자유 난리 났네요 ㅎㅎ 여러분 백업 잘해두세요 ㅠ 14 으뜸어린이 2014.11.27 0/0
질문 PixelGetColor 기반으로 만든 매크로 공유 힘들까요? 6 rh1406 2014.11.25 0/0
질문 오토핫키 좋은 강좌점요 1 현이내 2014.11.24 0/0
정보 소스 여러 파일로 관리 하는 팁 7 묵치기 2015.01.20 0/0
질문 데스크탑과 노트북 차이점이 멀까요? 이미지 서칭이 호... 8 발자국 2014.11.26 0/0
자유 지니모션용 오토핫키 만들어 쓰려다가 6 팝스타리아 2014.11.28 0/0
Board Pagination Prev 1 ... 456789101112 ... 209 Next
/ 209

전체 최신 인기글

전체 주간 인기글