오토핫키 커뮤니티

조회 수 203 추천 0 댓글 5
< 문제점 설명>
- Option.ini 존재하지 않을때 실행시 Gui 정상적으로 구현하나 영웅 반복 스킬 설정을 사용자 임의로 체크하여 저장하고
매크로 종료후 재실행하면 Gui가 제대로 구현되지 않습니다.


<문제점 스샷>
https://i.imgur.com/QcaLKLq.png https://i.imgur.com/tcRneO6.png


<스크립트>
- 명령어가 너무 많아서 오류나는 부분만 요약해서 따왔습니다. 3~5 팀 소스 생략

Gui, 6: Add, Tab, x2 w320 h570 +Center, 1팀|2팀
Gui, 6: Tab, 1팀
Gui, 6: Add, Edit, x32 y200 w20 h20 cBlue +Center, 1
Gui, 6: Add, Checkbox, x60 y201 w70 h20 vBattle1SkillA1 , 1번 스킬
Gui, 6: Add, Checkbox, x140 y201 w70 h20 vBattle1SkillA2, 2번 스킬
Gui, 6: Add, Checkbox, x220 y201 w70 h20 vBattle1SkillA3, 각성 스킬
Gui, 6: Tab, 2팀
Gui, 6: Add, Edit, x32 y225 w20 h20 cBlue +Center, 1
Gui, 6: Add, Checkbox, x60 y226 w70 h20 vBattle2SkillB1, 1번 스킬
Gui, 6: Add, Checkbox, x140 y226 w70 h20 vBattle2SkillB2, 2번 스킬
Gui, 6: Add, Checkbox, x220 y226 w70 h20 vBattle2SkillB3, 각성 스킬


IfNotExist, %OptionFile% ; 옵션파일이 존재하지 않을때 고정값
{
   GuiControl, 6:, Battle1SkillA1, 0
   GuiControl, 6:, Battle1SkillA2, 0
   GuiControl, 6:, Battle1SkillA3, 1

   GuiControl, 6:, Battle2SkillB1, 0
   GuiControl, 6:, Battle2SkillB2, 0
   GuiControl, 6:, Battle2SkillB3, 1
}

IfExist, %OptionFile%
   Gosub, Load
Return


Load:
   GuiControl, 6:, Battle1SkillA1, 0
   GuiControl, 6:, Battle1SkillA2, 0
   GuiControl, 6:, Battle1SkillA3, 0

   GuiControl, 6:, Battle2SkillB1, 0
   GuiControl, 6:, Battle2SkillB2, 0
   GuiControl, 6:, Battle2SkillB3, 0

   MainLoop := A_Index
   Loop, 3
   {
      ; 보기 : Battle1SkillA1 ~ A3      
      ; 보기 : Battle2SkillB1 ~ B3
     
      IniRead, IniBattle%MainLoop%SkillA%A_Index%, %OptionFile%, Battle%MainLoop%, Battle%MainLoop%SkillA%A_Index%
      IniRead, IniBattle%MainLoop%SkillB%A_Index%, %OptionFile%, Battle%MainLoop%, Battle%MainLoop%SkillB%A_Index%

      SkillA := IniBattle%MainLoop%SkillA%A_Index%
      SkillB := IniBattle%MainLoop%SkillB%A_Index%

      GuiControl, 6:, RaidWave%MainLoop%SkillA, %A_Index%
      GuiControl, 6:, RaidWave%MainLoop%SkillB, %A_Index%
   }
Return


Save:
IfExist, %OptionFile%
   FileDelete, %OptionFile%

   MainLoop := A_Index
   Loop, 3
   {
      ; 보기 : Battle1SkillA1 ~ A3
      ; 보기 : Battle2SkillB1 ~ B3

      GuiControlGet, Battle%MainLoop%SkillA%A_Index%, 6:
      GuiControlGet, Battle%MainLoop%SkillB%A_Index%, 6:

      SkillA := Battle%MainLoop%SkillA%A_Index%
      SkillB := Battle%MainLoop%SkillB%A_Index%

      IniWrite, %SkillA%, %OptionFile%, Battle%MainLoop%,  Battle%MainLoop%SkillA%A_Index%
      IniWrite, %SkillB%, %OptionFile%, Battle%MainLoop%,  Battle%MainLoop%SkillB%A_Index%
   }
Return

GuiClose:
ExitApp
Return



BattleLoop()
{
   GuiControlGet, Battle1SkillA1, 6:
   GuiControlGet, Battle1SkillA2, 6:
   GuiControlGet, Battle1SkillA3, 6:

   GuiControlGet, Battle2SkillA1, 6:
   GuiControlGet, Battle2SkillA2, 6:
   GuiControlGet, Battle2SkillA3, 6:
   Loop
   {
      if(Battle1SkillA1)
      {
         ; 특정동작
      }
      if(Battle1SkillA2)
      {
         ; 특정동작
      }
      if(Battle1SkillA3)
      {
         ; 특정동작
      }
      if(Battle2SkillB1)
      {
         ; 특정동작
      }
      if(Battle2SkillB2)
      {
         ; 특정동작
      }
      if(Battle2SkillB3)
      {
         ; 특정동작
      }
}
return

< 질문 >
문제점이 도통 뭔지 잘 모르겠습니다. Gui 구현 실패에 대해 테일스타에서 검색해서 찾아 수정해보고 해도 잘안되네요. 
위 문제에 대해 아시는분 계시면 조언 좀 부탁드립니다.

  • 리체 2015.10.26 11:17

    Gui, 6: Add, Tab, x2 w320 h570 +Center, 1팀|2팀

    L버전 사용시 Gui, 6: Add, Tab2, x2 w320 h570 +Center, 1팀|2팀 ;tap2 로 고쳐야 함.


     MainLoop := A_Index
       Loop, 3
       {
    아직 루프문이 시작도 안했는데 A_Index의 값을 사용하면 안되죠. 삭제해버리고
    Battle%A_Index%, Battle%A_Index%SkillA%A_Index%
    이런식으로 바꿔보세요.

    BattleLoop()
    {
       GuiControlGet, Battle1SkillA1, 6:
    이렇게 할시 구이값을 불러오든가요?
    함수안이라서 못불러오지 않을까 생각되는데요.
    함수사용전에 구이값을 가져오고 함수안에서 global 화 시키세요.

  • 마토깽 2015.10.26 11:37
    MainLoop := A_Index
    Loop, 3
    {
    이부분 기입안한 부분이 있네요.
    Loop,2
    {
    MainLoop := A_Index
    Loop, 3
    {
    ~~
    되어있네요. 일단 리체님 조언대로 한번 공부해가면서 수정해보도록하겠습니다. 확인해보니 오핫은 L버전이 아니네요. 감사합니다.
  • 제발등업좀2 2015.10.26 12:01
    차리리 귀찮더라도 한줄한줄 쓰시거나.. 아니면.. 배열을 이용하여... 변수값 만 돌리는건 어떠한가요 ㅎ?
  • 마토깽 2015.10.26 16:29
    해결하였습니다. 제가 실수 했습니다. 어제 하루종일 방콕해서 Gui만들고 소스공부해서 짜본다고
    제 뇌가 과부하가 걸렸나보네요.. 수정하려고 딱봤는데 Load: 랑 Save: 쪽에 InBattele, Battle 문을 바꿔놨네요..
    이런 초보적인 실수는 매번하는데 오늘따라 제 자신한테 무지 창피하네요. 어제 이거 고치느라고 몇시간을 허비했는지..ㅠㅠ 아무튼 리체님 감사합니다.
  • 리체 2015.10.26 17:42
    해결되었다니 다행이네요. 건투를 빌어요.

List of Articles
분류 제목 글쓴이 최근변경 추천
질문 [질문] Gui Creator, SaveFile(.xml) Load 실패 1 마토깽 2015.10.29 0/0
질문 오토핫키도 대부분 게임에서 막나요? 3 호태 2015.10.29 0/0
자유 오늘 생각없이 매크로돌리면서 은행사이트 들어갔더니 3 sica 2015.11.12 0/0
정보 ㅋㅋㅋㅋ 베스트글 보려고 2랩찍으려다가 2랩 찍기전에... 6 sica 2018.03.03 0/0
자유 으아아아아아아 오토핫키 베스트글 보고싶어요!! 3 sica 2015.11.03 0/0
질문 칼리브 설정하려고 하면 먹통 창공의창해 2015.10.26 0/0
질문 [해결] 실행시 Gui글자를 읽어들이지 못합니다. 5 마토깽 2015.10.26 0/0
질문 함수 불러와서 쓸 때 함수 내의 특정부분만 예외처리 ... 14 아이나인 2015.10.26 0/0
질문 오토핫키 공부해볼까 하는데 얼마나 걸릴까요? 6 Poohya 2015.10.27 0/0
질문 오토핫키 초보입니다 2 이리오리오 2015.11.15 0/0
자유 오토핫키나 그외 매크로 정보공유 톡방 1 최원태 2015.10.26 0/0
질문 controlclick 이용한 비활성 드래그 질문드려요 6 poerty 2015.10.30 0/0
질문 Dropdownlist 연동관련 질문드리겠습니다 22 최원태 2015.10.25 0/0
정보 팝업 알림, CleanNotify 3 예지력1 2015.11.11 4/0
질문 오토핫키 FTP 이용 다운로드 시 질문입니다. 5 2Yrs 2015.11.12 0/0
질문 오토핫키 이미지 서치 질문하려구 합니다~ 2 서영욱 2015.10.22 0/0
자유 비활성 이미지서치 팁좀 주실 분 있나요... 4 sica 2016.01.22 0/0
질문 document 엔터입력 1 _Crash 2016.04.16 0/0
질문 SciTE4AutoHotkey 질문드립니다. 2 doprop 2015.10.18 0/0
질문 Gui ActiveX 에 Send,{Enter} 가 안들어가네요 ㅠㅠ. 3 _Crash 2015.10.20 0/0
Board Pagination Prev 1 ... 140141142143144145146147148 ... 209 Next
/ 209

전체 최신 인기글

전체 주간 인기글