-
오토핫키 버튼에 이미지, 아이콘 추가오토핫키/라이브러리 2024. 10. 15. 05:27
압살맨 오픈채팅 바로가기
압살맨 유튜브 바로가기
압살맨 후원하기
시작
옛날부터 오토핫키의 클래식(?) 한 GUI 를 조금이라도 예쁘게 만들 수 있는 방법이 없을까 고민했었다.
그렇게 포럼을 뒤지다가 발견한 함수가 있었다.
본문
https://www.autohotkey.com/boards/viewtopic.php?t=1985
여기가 원본 링크
GuiButtonIcon(Handle, File, Index := 1, Options := "") { RegExMatch(Options, "i)w\K\d+", W), (W="") ? W := 16 : RegExMatch(Options, "i)h\K\d+", H), (H="") ? H := 16 : RegExMatch(Options, "i)s\K\d+", S), S ? W := H := S : RegExMatch(Options, "i)l\K\d+", L), (L="") ? L := 0 : RegExMatch(Options, "i)t\K\d+", T), (T="") ? T := 0 : RegExMatch(Options, "i)r\K\d+", R), (R="") ? R := 0 : RegExMatch(Options, "i)b\K\d+", B), (B="") ? B := 0 : RegExMatch(Options, "i)a\K\d+", A), (A="") ? A := 4 : Psz := A_PtrSize = "" ? 4 : A_PtrSize, DW := "UInt", Ptr := A_PtrSize = "" ? DW : "Ptr" VarSetCapacity( button_il, 20 + Psz, 0 ) NumPut( normal_il := DllCall( "ImageList_Create", DW, W, DW, H, DW, 0x21, DW, 1, DW, 1 ), button_il, 0, Ptr ) ; Width & Height NumPut( L, button_il, 0 + Psz, DW ) ; Left Margin NumPut( T, button_il, 4 + Psz, DW ) ; Top Margin NumPut( R, button_il, 8 + Psz, DW ) ; Right Margin NumPut( B, button_il, 12 + Psz, DW ) ; Bottom Margin NumPut( A, button_il, 16 + Psz, DW ) ; Alignment SendMessage, BCM_SETIMAGELIST := 5634, 0, &button_il,, AHK_ID %Handle% return IL_Add( normal_il, File, Index ) }
이게 함수
Gui, 2:Add, Button, x5 y5 w130 h30 vBtLoad gLoad hwndIcon1, ahk 로드 및 실행 Gui, 2:Add, Button, x135 y5 w90 h30 gExitTest vBtExit hwndIcon2, ahk 종료 Gui, 2:Add, Button, x225 y5 w120 h30 gAlwaysOnTop vPin hwndIcon3, 런처 항상 위에 GuiButtonIcon(Icon1, "shell32.dll", 46, "s24 a0") GuiButtonIcon(Icon2, "shell32.dll", 235, "s24 a0") GuiButtonIcon(Icon3, "imageres.dll", 249, "s24 a0")
이게 예제이다.
보면 윈도우에서 기본으로 제공하는
shell32.dll 을 활용할 수도 있고
imageres.dll 을 활용할 수도 있다.
GuiButtonIcon(Icon3, "kk.png", , "s24 a0")
이렇게 내가 가지고 있는 이미지 자체를 지정해서 버튼에 삽입하는 것도 가능하다.
'오토핫키 > 라이브러리' 카테고리의 다른 글
오토핫키] 인터넷 현재 페이지 주소 URL 얻기 (0) 2022.11.12 오토핫키] WinGetPos 보다 정확한 WinGetPosEx (1) 2022.09.26 오토핫키 마우스 드래그로 툴팁 위치 변경 (0) 2022.05.17 오토핫키 번역기 / 구글번역 연동 (1) 2022.05.14 오토핫키 이미지없이 이미지서치, 구이 Picture / 이미지 이진화 (0) 2022.05.12