예를 들어 gui의 edit칸에 1을 적고 바로 2를 적으면 12가 나오지만 1을 적고 5초간 기다린후 2를 적으면 1이 사라지고 2만 표출되도록 하고 싶습니다. Sleep으로 하려니 아예 스크립트가 지연이 돼서 다른 코드가 멈추네요. 방법이 있을까요?
- Elkha - Blue
- 오토핫키 커뮤니티
- 오토핫키
문자열을 인식해서 5초간 같은 자릿수가 유지되면 명령을 시행하도록 하고싶습니다.
-
-
사용하려는 의도를 모르겠네요 직접입력하는거면 if랑 백스페이스만 넣어줘도 충분?
-
시간관련 내장변수를 활용하면 가능합니다.
-
사용의도좀 알려주세요
-
이런식으로 쓰면 될듯요.#SingleInstance ForceGui, Add, Edit, w200 vEditTest gEditTestGui, ShowreturnGuiClose:ExitAppEditTest:GuiControlGet, EditTest ;에디트박스 내용을 EditTest 변수로 읽어오기if EditTestOld<> ;EditTestOld 변수가 비어있지 않은 경우StringReplace, EditTestChr, EditTest, % EditTestOld ;EditTest 변수에서 EditTestOld 변수의 값과 중복된 내용 제거한값 EditTestChr 변수에 저장if EditTestTick and (A_TickCount-EditTestTick>=5000) ;에디트박스 변경타임이 5초를 초과했을 경우GuiControl,, EditTest, % EditTest := EditTestChr ;에디트박스 내용을 EditTestChr 변수 값으로 갱신EditTestOld := EditTest, EditTestTick := A_TickCount ;다음 에디트박스 내용 변경시 참조를 위해 관련 변수 백업return
-
좀 생소한 방식이네요.. 해석 가능할까요?
-
코멘트 추가 해 놨어요.
-
정말정말 친절하게 가르쳐주셔서 감사합니다 사랑해요
-
#No Env#SingleInstance ForceGui, Add, Edit, w200 v숫자 g숫자Gui, ShowreturnGuiClose:ExitAppreturn숫자:GuiControlGet, 숫자 ;에디트박스 내용을 숫자 변수로 읽어오기stringlen,숫자자리수,숫자if (숫자자리수 = 1){if 숫자Old<> ;숫자Old 변수가 비어있지 않은 경우StringReplace, 1자리수숫자, 숫자, % 숫자Old ;숫자 변수에서 숫자Old 변수의 값과 중복된 내용 제거한값 1자리수숫자 변수에 저장if 숫자Tick and (A_TickCount-숫자Tick>=5000) ;에디트박스 변경타임이 5초를 초과했을 경우GuiControl,, 숫자, % 숫자 := 1자리수숫자 ;에디트박스 내용을 1자리수숫자 변수 값으로 갱신숫자Old := 숫자, 숫자Tick := A_TickCount ;다음 에디트박스 내용 변경시 참조를 위해 관련 변수 백업}elseif (숫자자리수 > 2){stringmid,숫자2,숫자,3guicontrol,,숫자,%숫자2%postmessage,0xB1, 2, 2, edit1}return1자리수숫자:stringmid,숫자2,숫자,2guicontrol,,숫자,%숫자2%postmessage,0xB1, 2, 2, edit1return
이렇게 짜봤는데 안되네요..
1자리만 5초 지나면 바뀌게하고
2자리일땐 3번째 숫자쓰면 바로 바뀌게 하려는데 안될까요 -
#NoEnv#SingleInstance ForceGui, Add, Edit, w200 v숫자 g숫자Gui, ShowreturnGuiClose:ExitApp숫자:GuiControlGet, 숫자StringLen, 숫자자리수, 숫자if 숫자Old<>StringReplace, 1자리수숫자, 숫자, % 숫자Oldif 숫자Tick and (A_TickCount-숫자Tick>=5000) and (숫자자리수<=2) ;입력된 숫자가 2개 이하일때만 새숫자 적용GuiControl,, 숫자, % 숫자 := 1자리수숫자숫자Old := 숫자, 숫자Tick := A_TickCountreturn
-
아하.. 조건문 추가가 가능했군요.. 감사합니다!!
-
#SingleInstance Force
Gui, Add, Edit, w200 v숫자 g숫자
Gui, Show
return
GuiClose:
ExitApp
return
숫자:
GuiControlGet, 숫자 ;에디트박스 내용을 숫자 변수로 읽어오기
guicontrolget,숫자
stringlen,숫자자리수,숫자
if 숫자Old<> ;숫자Old 변수가 비어있지 않은 경우
StringReplace, 1자리수숫자, 숫자, % 숫자Old ;숫자 변수에서 숫자Old 변수의 값과 중복된 내용 제거한값 1자리수숫자 변수에 저장
if 숫자Tick and (A_TickCount-숫자Tick>=1000) and (숫자자리수 <= 2) ;에디트박스 변경타임이 5초를 초과했을 경우
GuiControl,, 숫자, % 숫자 := 1자리수숫자 ;에디트박스 내용을 1자리수숫자 변수 값으로 갱신
숫자Old := 숫자, 숫자Tick := A_TickCount ;다음 에디트박스 내용 변경시 참조를 위해 관련 변수 백업
if (숫자자리수 > 2){
stringmid,숫자2,숫자,3
guicontrol,,숫자,%숫자2%
postmessage,0xB1, 2, 2, edit1
}
return
1자리수숫자:
stringmid,숫자2,숫자,2,R
guicontrol,,숫자,%숫자2%
postmessage,0xB1, 2, 2, edit1
PostMessage, 0x100, 39, 21823489, Edit1, ㅁㅁ.ahk
PostMessage, 0x101, 39, 21823489, Edit1, ㅁㅁ.ahk
return
이 상태에서..
PostMessage, 0x100, 39, 21823489, Edit1, ㅁㅁ.ahk
PostMessage, 0x101, 39, 21823489, Edit1, ㅁㅁ.ahk
추가해줬는데도 자꾸 한자리 숫자를 적은 후 다른 숫자를 적으면 커서가 왼쪽으로 가서
3 하나를 적은후 52를 적으면 왼쪽부터 적혀서 25가 돼버리네요.. 방법이 없을까요? -
해당현상을 방지하긴 위한 코드가
postmessage,0xB1, 2, 2, edit1 ; 이부분입니다. -
오토핫키를 써보지는 않았지만 제가 파이썬을 다룰때 위와 같은 문제를 스레드를 사용해서 해결한 적 이있습니다. 오토핫키에서는 가능한건지 모르겠습니다만 혹시 몰라서 글 남겨봐요
분류 | 제목 | 글쓴이 | 최근변경 | 추천 |
---|---|---|---|---|
질문 | 오핫 초보 비밀번호 입력 매크로 질문입니다 1 | 좀비님 | 2015.12.11 | 0/0 |
자유 | scite4autohotkey사용시 질문 1 | 은응 | 2015.12.11 | 0/0 |
질문 | adb 서치와 클릭질문... 1 | 부비수달 | 2015.12.10 | 0/0 |
자유 | 허허. 설정 저장이 않되서 3시간쯤 봤는데 | 침묵의고요 | 2015.12.10 | 0/0 |
질문 | 파일인스톨관련~!!!(굽신굽신 도와주세요ㅠㅠ) 7 | 제발등업좀2 | 2015.12.10 | 0/0 |
질문 | 타이머 숫자를 10자리부터 표시되게 가능할까요? 21 | 침묵의고요 | 2016.04.30 | 0/0 |
질문 | 블택에서 이미지서치 관련 질문입니다. 2 | 도영이아빠 | 2015.12.10 | 0/0 |
질문 | [해결] "" 내 변수 호출 질문 3 | 아잉뿌잉 | 2015.12.10 | 0/0 |
질문 | 비활성 마우스 휠다운 질문입니다 1 | 푸른호수 | 2015.12.09 | 0/0 |
질문 | gui 창 배치 질문 드립니다! 8 | 침묵의고요 | 2015.12.09 | 0/0 |
자유 | 블루스택과 녹스에서 히트 돌릴때 색상차이 8 | 와이로 | 2017.11.09 | 4/0 |
질문 | 오토핫키 이미지서치 화면밖 서치 4 | 아잉뿌잉 | 2015.12.09 | 0/0 |
질문 | adb dd 명령어 및 RAW파일 생성 질문있습니다. 6 | 허럴럴렁 | 2015.12.18 | 0/0 |
질문 | 오토핫키 위치 이미지 인식후 그다음 인식 질문입니다. 5 | 팀팀이 | 2015.12.15 | 0/0 |
질문 | 오토핫키 질문 있습니다 알려주세요..ㅠㅠ 3 | Auto영웅 | 2015.12.08 | 0/0 |
정보 | 저번에 올려드린 홈페이지보다 더 유용한 사이트 5 | 침묵의고요 | 2018.02.07 | 2/0 |
질문 | 연산 비교에관해 질문드립니다 5 | 아기a | 2015.12.08 | 0/0 |
질문 | 오토핫키가 중지가 꺼도 정지가않됩니다. 도와주세요! 2 | 침묵의고요 | 2015.12.07 | 0/0 |
질문 | ini IniWrite 질문입니다! 4 | 침묵의고요 | 2015.12.07 | 0/0 |
질문 | 오토핫키 PC 키입력이 안먹히는데 왜그런건가요? 1 | optiu | 2015.12.09 | 0/0 |
sleep 이 아니라 아예 서치를 실시간으로 돌려서 바로 확인하게끔 해야하지 않을까요????