매크로

조회 수 1301 추천 0 댓글 7

예전부터 생각은 하고 있던 부분인데요


filecopy명령으로 파일등을 복사할 경우 , 그 복사되는 경과를 progress bar로 표시하기 위한겁니다.

GUI창에 별도로 바를 두고 하려구요.


윈도우 파일복사되는 것을 GUI에 넣으려는 거죠.

https://i.imgur.com/VfOQFEj.jpg?



일단 생각해볼수 있는것이 , 먼저 폴더에 있는 파일의 용량을 알아낸후

그것을 백분율로 나눈다음에 , 10개로 쪼갠다면 , 1개분량의 용량이 복사가되면 눈금이 10분1 오르고

이런식으로 10번해서 100퍼센트가 되게 해볼까 생각중이었는데요.

이럴경우 , 파일이 얼마나 복사가 됐나 이 용량을 알아야 하는 문제가 있네요..


GUI에 Progress Bar 기능이 있는걸보면 분명 사용예제들이 있을텐데 , 영어는 까막눈이라 검색도 잘안되구,,


쉬운방법으로는 , 그냥 progress쓰지말고 , 위 그림처럼 저 화면이 별도로 보이게끔만 해도 나을거 같은데요.

filecopy 명령어로 하면 안보이더라구요. 옵션이 있는건지... flag 1 밖에 없던데,,덮어씌기요...


해보신분의 도움을 기다립니다.



Gui, Add, Progress, y50 w250 h10 vMyProgress
Gui, Add, Text, x260 y50 w40 h30 vtime, time

Gui,Show,x10 y10

return


F1::
FileGetSize,size,%A_ScriptDir%\MOV\*.MP4
;MsgBox, %size%
result := size/100

;;;;;;

;=============================

loop,10
{
?count += 10
?GuiControl,, MyProgress, %count%
?GuiControl,, time,%count%
?sleep 200
}

guiclose:
ExitApp



  • 제발등업좀2 2015.06.19 14:12
    아는게없어..답변은 못해드리지만.. 잘보고배워갑니다... 이런기능도 있어군요..... 구이믄 거의 스마트구이 이용하는처지라 .. 몰라거든요.. 암튼 잘배워갑니다.
  • profile
    외치기 2015.06.19 15:02

    파일을 A에서 B로 복사한다고하면

    A에 크기를 구하고

    복사를 시작하고

    타이머를 돌려서 일정시간간격으로 B에 크기를 구해와서

    B/A를 계산해서 Progressbar에 적용시키면 되지 않을까요?

  • 우후훅 2015.06.19 20:05
    전송되고 있는 부분의 파일용량은 탐색기로는 풀용량이 나오는거 같긴하네요.

    일단, 보류했어요.ㅠ
  • profile
    외치기 2015.06.22 10:10
    B에 크기가 풀용량으로 나온다고요?
    흠... 제가 생각한걸아 실제 전송방식이 다르군요.
  • 모바게 2015.06.25 17:26
    file1:="src"
    file2:="dest"

    address :=registercallback("update")
    dllcall("CopyFileEx",str,file1,str,file2,ptr,address,Uint,0,int,0,int,0)
    progress, off
    return

    Esc::ExitApp

    update(var1lo,var1hi,var2lo,var2hi,var3lo,var3hi,var4lo,var4hi,var5,var6,var7,var8,var9){
    ? ? If (A_PtrSize = 8)
    ? ? ? ? copied := (var1hi / var1lo) * 100
    ? ? Else
    ? ? ? ? copied := (var2lo/var1lo) * 100
    ? ? progress, % copied,,Copy of the file !,Copy
    ? ? return 0
    }

  • 우후훅 2015.06.25 18:45

    그냥 잊고 있었는데 답변을 주셔서 감사합니다.

    프로그래스바 사용방법의 지표를 열어주셨네요.
    두루 이곳저곳에 유용하게 쓰일것 같습니다.
    dllcall로 불러오는 저런 함수의 종류에 대해 무지하다보니 아예 시도조차 못하는 부분들이네요.ㅠ


    아주 잘 됩니다. GUI에 적용시키면 progress바가 자연스럽게 탐색기 복사그래픽처럼 똑같이 움직이네요.

  • T7GG 2016.09.05 10:46
    모바게님 안녕하세요
    바쁘시겠지만 읽어보시고 도움주시면 감사하겠습니다 (_ _)

    오토핫키로 백업 프로그램을 쓰고있습니다

    우연찬게 위 소스 보고 대입을 해보고 있는데요

    파일1번에 원본넣고 파일2번에 대상폴더를 지정을 하였습니다

    내문서를 체크하였다면 선택 폴더를 백업하게 지정하였는데요

    Progress바가 없으니 언제 끝나는지 알수가 없어서 적용해보았는데요

    백업은 진행되는데 Progress바가 표현이 안되.. 소스 사용법 문의 드립니다..



    if 내문서=1
    {
    formattime , nowtime,,MM-dd HH:mm:ss
    guicontrol,,notice_2, %message_2%
    listMessage =%nowtime% 내문서 백업 중.. %message_2%|%listMessage%
    guicontrol,,notice_list, |%listMessage%


    file1:="C:\Users\%계정입력%\Documents"

    file2:="d:\backup\Documents"




    address :=registercallback("update")

    dllcall("CopyFileEx",str,file1,str,file2,ptr,address,Uint,0,int,0,int,0)

    progress, off







    FileCopyDir, C:\Users\%계정입력%\Documents, d:\backup\Documents,1


    formattime , nowtime,,MM-dd HH:mm:ss
    guicontrol,,notice_2, %message_2%
    listMessage =%nowtime% 내문서 완료.. %message_2%|%listMessage%
    guicontrol,,notice_list, |%listMessage%


    }
    return


    update(var1lo,var1hi,var2lo,var2hi,var3lo,var3hi,var4lo,var4hi,var5,var6,var7,var8,var9)
    {

    If (A_PtrSize = 8)

    copied := (var1hi / var1lo) * 100

    Else

    copied := (var2lo/var1lo) * 100

    progress, % copied,,Copy of the file !,Copy

    return 0

    }

List of Articles
분류 제목 글쓴이 최근변경 추천
질문 [오랜만에 접속했습니다. 오토핫키 배워보렵니다.] 클라이머 2020.02.20 0/0
질문 [세나]스킬에 우선권을 줘서 스킬이 예약되있으면 취소... 2 genie7 2015.11.02 0/0
질문 [세나] 매크로 만드는 중인데 좌표 값을 모르겟네요 6 genie7 2015.08.15 0/0
질문 [사무업무]Postmessage혹은 Controlsend로 창2개컨트롤... 2 법돌 2015.06.04 0/0
질문 [별이되어라]오토핫키 잘 아시는분 있으시면 도와주세요 16 천조국 2015.02.05 0/0
질문 [밀크탭게임 관련]어떤 방법을 동원해도 이건 안되네요... 20 로맨티스트 2015.07.11 0/0
질문 [명령어]오토핫키 명령어로 부팅시 오토핫키 실행하게 ... 생존자8 2017.07.04 0/0
질문 [레이븐]setimer 라벨에 gosub 이나 goto 명령어 쓰면 ... 15 T7GG 2015.08.30 0/0
질문 [Gui] 이미지가 포함된 편집가능한 테이블 제작 26 Hangoon 2015.03.26 1/0
질문 xe홈페이지 로그인 인증방법 문의 24 우리형 2016.02.16 1/0
질문 x,y축의 직선이 마우스 따라다니게 할수 있나요?? 맛초킹 2017.02.13 0/0
질문 X Trap은 뮤텍스로 우회 못하나요? gab 2018.02.03 0/0
질문 wparam값 관련 명령어 아시는분.. 1 석빡귀 2015.09.23 0/0
질문 winsock 10051 에러좀 도와주세요~^^; 12 퉁군 2015.05.11 0/0
질문 winmove 질문좀 드리겠습니다. 7 우앙쿵쾅 2015.08.04 0/0
질문 winmove 실행시 오토핫키 팅김 질문드립니다 Liayn 2018.06.05 0/0
질문 WinMove 관련질문... 2 파더 2014.12.19 0/0
질문 WinHttp로 정보를 받아왔을때 한글이 깨져서 나옵니다 2 여의도김매력 2017.06.12 0/0
질문 winhttp.send() 이 문구가 너무 오래걸립니다. 3 _Crash 2015.05.28 1/0
질문 winhttp 질문드리고싶습니다 ..부디 답변부탁드리겠습... 9 제발등업좀2 2017.07.17 0/0
Board Pagination Prev 1 ... 134135136137138139140141142 ... 172 Next
/ 172

전체 최신 인기글

전체 주간 인기글