매크로

2015.02.13 23:08

[디자인] GUI 스킨

조회 수 11151 추천 9 댓글 214

https://i.imgur.com/qx6jZ07.png

블로그 글 복사하면, 티의 이야기(ㅎㅎ)가 금지어라서 이미지와 다운로드링크를 새로 적어야하더군요.

떄문에 글이 좀 난잡해졌습니다. 원본 글 읽으시길 추천합니다 http://me2.do/GoveZZiz



오토핫키는 GUI(Graphical User Interface) 를 쉽게 사용할 수 있습니다.

단순히 입력명령어들로만 매크로를 제작할수있지만, 보다 직관적인 프로그램을 위해서는 인터페이스가 제공되어야겠죠

또한 기본 윈도우 외관에서 벗어나, 아래처럼 새로운 스킨들로 개성있는 인터페이스창을 만들수있습니다.


https://i.imgur.com/9iRHzYf.gif

?

필요한 파일


ㅡ USkin.dll 파일이 필요합니다 여기를 클릭해 다운로드하세요.

ㅡ 테마(스킨)파일이 필요합니다, 위 링크에 'skin.zip' 을 다운받으세요.

ㅡ 라이브러리 함수가 필요합니다. AutoHotkey/Lib 폴더 혹은 자신의 소스코드와 동일한 경로에 두세요.


SkinForm(Param1 = "Apply", DLL = "", SkinName = ""){
? ? if(Param1 = Apply){
? ? ? ? DllCall("LoadLibrary", str, DLL)
? ? ? ? DllCall(DLL . "\USkinInit", Int,0, Int,0, AStr, SkinName) ; For?유니코드
??????? ;DllCall(DLL . "\USkinInit", Int,0, Int,0, Str, SkinName) ; For?ANSI
??? }else if(Param1 = 0){
? ? ? ? DllCall(DLL . "\USkinExit")
? ? ? ? }
}


라이브러리


GUI 창에 적용하기


USkin.dll 은 기본 GUI의 외관 리소스파일들을 교체함으로서, 오토핫키 문법에 아무런 영향을 주지 않습니다.

따라서, DllCall로 USkin.dll의 함수를 꺼내쓰고 기존의 코드는 수정할것이없습니다.

스크립트 최상단에 아래의 코드를 입력하세요, 모든 GUI의 리소스파일이 테마파일로 교체됩니다.


SkinForm(Apply, A_ScriptDir . "\USkin.dll", A_ScriptDir . "\스킨파일명.msstyles")


GUI창을 닫을떄,?핸들이?새는것을 막기위해 USkin.dll 을 종료해야합니다


SkinForm(0)


아래 코드는 'Milkymac.msstyles' 스킨을 사용하는 GUI 예제입니다.


#NoEnv
#SingleInstance force
SkinForm(Apply, A_ScriptDir . "\USkin.dll", A_ScriptDir . "\Milikymac.msstyles")
OnExit, GetOut
Gui, add, button,xm w100 h40, Button
Gui, add, edit, xm y+20 w100 h20, Edit
Gui, add, listbox,xm y+20, ListBox
Gui, add, checkbox,xm y+20, checkbox
Gui, add, DDL, xm y+20, DropDownList
Gui, Show, AutoSize, Test
return

GetOut:
GuiClose:
Gui, Hide
SkinForm(0)
ExitApp
return

SkinForm(Param1 = "Apply", DLL = "", SkinName = ""){
? ? if(Param1 = Apply){
? ? ? ? DllCall("LoadLibrary", str, DLL)
? ? ? ? DllCall(DLL . "\USkinInit", Int,0, Int,0, AStr, SkinName)
? ? }else if(Param1 = 0){
? ? ? ? DllCall(DLL . "\USkinExit")
? ? ? ? }
}


예제



List of Articles
제목 글쓴이 최근변경 추천
아주간단한 이미지서치 함카리스마 2024.02.12 0/0
아이템획득, 특정이벤트 발생 시 카톡으로 알림 55 dlslwl 2023.10.18 4/0
수정추가) 이미지 좌표 스크립트 + 픽셀 15 MaximM 2023.06.25 0/0
비활성 키입력 함수(가상키값 리스트화) 53 hersia 2023.07.20 1/0
비교적 인간적인 움직임을 보이는 MouseMove bkvcqr 2022.05.10 1/0
배열끼리 합치기 7 bkvcqr 2023.11.14 3/0
반복적인 스크립트 줄 수를 줄일 수 있는 기초적인 방법 10 bkvcqr 2024.02.15 0/0
바람의나라 도사 밀대 6 혀늬님 2024.03.03 1/0
매크로 프로그램을 응용프로그램 바로 옆에 띄우기 2 puit 2022.02.26 0/0
마우스 커서를 따라다니는 툴팁시계 bkvcqr 2022.05.31 0/0
랜덤좌표 스크립트 입니다. 78 sama 2023.11.04 3/0
단축키로 체크박스 온오프하기 8 bkvcqr 2023.08.26 2/0
내장파일 설치 가상화 133 예지력1 2023.02.05 27/0
구이창 어디를 클릭&드래그를 해도 창 위치를 이동 bkvcqr 2022.05.31 1/0
게임 화면을 텔레그램이나 카톡으로 보내는 기능이 있... 에니용 2024.05.17 0/0
간단한 매크로 함카리스마 2024.02.10 0/0
[문법] Try, Catch 함수를 Try하고 예외를 Catch 한다 106 예지력1 2023.02.05 9/0
[디자인] GUI 스킨 214 예지력1 2023.11.03 9/0
send,sleep 의 개념 민영123 2021.09.22 0/0
Random 함수로도 매크로 감지될 때 Random 적용(가우시... 3 bkvcqr 2022.10.22 0/0
Board Pagination Prev 1 2 3 Next
/ 3

전체 최신 인기글

전체 주간 인기글