반응형
1. 오토핫키를 활용한 창 활성화 자동화
오토핫키(AutoHotkey)를 사용하면 특정 창이 활성화될 때 자동으로 작업을 수행할 수 있습니다. 이를 활용하면 특정 프로그램이 열릴 때 필요한 작업을 자동으로 실행하거나, 특정 창에서만 단축키를 활성화하는 등의 자동화를 구현할 수 있습니다.
2. 특정 창이 활성화될 때 자동 작업 실행하기
2.1 #IfWinActive를 활용한 조건부 단축키 설정
#IfWinActive를 사용하면 특정 창이 활성화된 경우에만 특정 키를 실행할 수 있습니다.
#IfWinActive ahk_exe notepad.exe
F1::MsgBox 메모장이 활성화된 상태에서 F1 키를 눌렀습니다.
#IfWinActive
이제 메모장이 활성화된 상태에서만 F1 키가 작동합니다.
2.2 SetTimer를 활용한 자동 작업 실행
SetTimer를 사용하면 특정 창이 활성화되었을 때 특정 작업을 자동으로 수행하도록 설정할 수 있습니다.
SetTimer, CheckActiveWindow, 1000 ; 1초마다 창을 확인
return
CheckActiveWindow:
if WinActive("ahk_exe chrome.exe") {
Send, ^t ; 크롬이 활성화되면 새 탭 열기 (Ctrl + T)
}
return
이제 크롬이 활성화될 때마다 자동으로 새 탭이 열립니다.
3. 특정 창이 활성화될 때 특정 작업 실행
3.1 특정 창이 활성화되었을 때 메시지 표시
#Persistent
SetTimer, NotifyWhenActive, 500 ; 0.5초마다 창 확인
return
NotifyWhenActive:
if WinActive("ahk_class Notepad") {
ToolTip, 메모장이 활성화되었습니다!
Sleep, 2000 ; 2초 후 메시지 제거
ToolTip
}
return
이제 메모장이 활성화될 때마다 2초 동안 메시지가 표시됩니다.
3.2 특정 창이 활성화될 때 프로그램 실행
SetTimer, OpenCalculator, 1000 ; 1초마다 창 확인
return
OpenCalculator:
if WinActive("ahk_exe excel.exe") {
Run, calc.exe ; 엑셀이 활성화되면 계산기 실행
}
return
이제 엑셀이 활성화될 때마다 계산기가 자동으로 실행됩니다.
4. 특정 창이 활성화되었을 때 작업을 반복 실행하지 않도록 설정
위 코드에서는 창이 활성화될 때마다 작업이 반복 실행될 수 있습니다. 이를 방지하려면 변수를 활용하여 한 번만 실행되도록 설정할 수 있습니다.
#Persistent
SetTimer, OpenOnce, 1000
return
AlreadyOpened := 0 ; 실행 여부 확인 변수
OpenOnce:
if WinActive("ahk_exe notepad.exe") {
if (!AlreadyOpened) {
MsgBox, 메모장이 활성화되었습니다!
AlreadyOpened := 1 ; 한 번만 실행
}
} else {
AlreadyOpened := 0 ; 창이 비활성화되면 초기화
}
return
이제 메모장이 활성화될 때 메시지가 한 번만 표시됩니다.
5. 특정 창이 비활성화될 때 작업 실행
창이 비활성화될 때 특정 작업을 수행하도록 설정할 수도 있습니다.
#Persistent
SetTimer, OnDeactivate, 500 ; 0.5초마다 창 확인
return
LastActive := 0
OnDeactivate:
if !WinActive("ahk_exe discord.exe") {
if (LastActive) {
MsgBox, 디스코드가 비활성화되었습니다.
LastActive := 0
}
} else {
LastActive := 1
}
return
이제 디스코드 창이 비활성화될 때 메시지가 한 번만 표시됩니다.
6. 마무리
오토핫키를 활용하면 특정 창이 활성화될 때 자동으로 작업을 수행할 수 있습니다. 이를 활용하면 생산성을 높이고, 반복적인 작업을 줄일 수 있습니다.
추가로 학습하면 좋은 주제:
- 특정 창이 닫힐 때 자동으로 다른 프로그램 실행하기
- 특정 창이 특정 위치에 오면 자동으로 정렬하기
- 창 활성화 여부를 기반으로 마우스 클릭 자동화
반응형
'오토핫키' 카테고리의 다른 글
오토핫키를 사용한 마우스 클릭 자동화 (0) | 2025.04.15 |
---|---|
오토핫키를 사용한 작업 관리자 자동화 – CPU 사용량 모니터링 (0) | 2025.04.14 |
오토핫키를 사용한 다중 모니터 제어 (0) | 2025.04.07 |
오토핫키로 특정 프로그램 실행 및 종료하기 (0) | 2025.04.06 |
오토핫키를 활용한 창 관리 자동화 – 창 크기, 이동, 정렬 자동화 (0) | 2025.04.05 |