상세 컨텐츠

본문 제목

윈도우 창 정렬을 편리하게, 초소형 스크립트 윈컨(WinCon)

자작프로그램/AHK-PC

by Rahs 2016. 1. 29. 16:39

본문

아마 WinSplit Revolution이라는 프로그램을 들어보신 분들 많으실 겁니다. 사용도 많이들 하셨을거구요. 그런데 최근에 불편한 점 못 느끼셨나요?

 

64비트 OS가 일반화되면서 64비트 OS에서 해당 프로그램을 구동 시 오류가 나거나 시스템 종료 시 확인 메시지를 눌러야 하는 경우가 많아졌어요.

그래서 그냥 필요한 기능만 넣어서 하나 만들자! 해서 만들어서 윈도우 시작프로그램에 넣어놨더니 이제 좀 살 것 같네요(...)

 

사용법은 간단합니다.

그냥 다운로드 해서 실행해보세요. 아무 변화도 없을 겁니다. 윈도우 작업 표시줄에 조그마한 곰돌이 아이콘이 생길 뿐이죠.

 

그러면 키보드 NumLock 키시고[각주:1] 아래 단축키 몇 번만 눌러보시면 감을 잡으실 겁니다.

 

 

Ctrl + Alt + 7 : 현재 선택된 윈도우를 모니터 작업영역 기준 1사분면으로 옮깁니다.

Ctrl + Alt + 9 : 현재 선택된 윈도우를 모니터 작업영역 기준 2사분면으로 옮깁니다.

Ctrl + Alt + 1 : 현재 선택된 윈도우를 모니터 작업영역 기준 4사분면으로 옮깁니다.

Ctrl + Alt + 3 : 현재 선택된 윈도우를 모니터 작업영역 기준 3사분면으로 옮깁니다.

 

Ctrl + Alt + 4 : 현재 선택된 윈도우를 모니터 작업영역 기준 1+4사분면으로 옮깁니다. (왼쪽 절반)

Ctrl + Alt + 6 : 현재 선택된 윈도우를 모니터 작업영역 기준 2+3사분면으로 옮깁니다. (오른쪽 절반)

Ctrl + Alt + 8 : 현재 선택된 윈도우를 모니터 작업영역 기준 1+2사분면으로 옮깁니다. (윗쪽 절반)

Ctrl + Alt + 2 : 현재 선택된 윈도우를 모니터 작업영역 기준 3+4사분면으로 옮깁니다. (아랫쪽 절반)

 

Ctrl + Alt + Shift + x : 프로그램을 종료합니다.

 

듀얼모니터에서는 어떤 식으로 동작할지 모르겠네요.

듀얼모니터로 바꿀 예정인데 그때 이것도 새로 짜서 업데이트를 하던가 해야겠어요.

 

AHK로 만들었고 컴파일한 파일과 소스 모두 첨부합니다.

뭐 소스랄 것도 없지만서도요. exe파일이 컴파일된 파일이고 실행할 때는 exe파일만 있으시면 됩니다.

 

WinCON AHK.zip

 

그럼 저는 또 총총..

 

Postscript.

아래 소스에 이상하게 ";" 이 들어가서 주석처리된 부분들이 있는데.. HTML의 신비란.. (절레절레)

소스 필요하신 분은 그냥 위에 파일에 있는 소스파일 메모장이나 AHK 에디터로 열어보시기 바랍니다~

 

#NoEnv  ; Recommended for performance and compatibility with future AutoHotkey releases.
#SingleInstance Force
SendMode Input  ; Recommended for new scripts due to its superior speed and reliability.
#KeyHistory 0
SetBatchLines, -1

Sysget, Mon, MonitorWorkArea,1
return

^!NumPad4:: ;좌 정렬
WinGetPos, x, y, w, h, A
If Not ((x = 0) & (y = 0) & (w = MonRight/2) & (h = MonBottom))
	WinMove, A,,0,0,MonRight/2, MonBottom
return

^!NumPad6:: ;우 정렬
WinGetPos, x, y, w, h, A
If Not ((x = MonRight/2) & (y = 0) & (w = MonRight/2) & (h = MonBottom))
	WinMove, A,,MonRight/2,0,MonRight/2, MonBottom
return

^!NumPad8:: ;상 정렬
WinGetPos, x, y, w, h, A
If Not ((x = 0) & (y = 0) & (w = MonRight) & (h = MonBottom/2))
	WinMove, A,,0,0,MonRight, MonBottom/2
return

^!NumPad2:: ;하 정렬
WinGetPos, x, y, w, h, A
If Not ((x = 0) & (y = MonBottom/2) & (w = MonRight) & (h = MonBottom/2))
	WinMove, A,,0,MonBottom/2,MonRight, MonBottom
return

^!NumPad7:: ;좌상 정렬
WinGetPos, x, y, w, h, A
If Not ((x = 0) & (y = 0) & (w = MonRight/2) & (h = MonBottom/2))
	WinMove, A,,0,0,MonRight/2, MonBottom/2
return

^!NumPad9:: ;우상 정렬
WinGetPos, x, y, w, h, A
If Not ((x = MonRight/2) & (y = 0) & (w = MonRight/2) & (h = MonBottom/2))
	WinMove, A,,MonRight/2,0,MonRight/2, MonBottom/2
return

^!NumPad1:: ;좌하 정렬
WinGetPos, x, y, w, h, A
If Not ((x = 0) & (y = MonBottom/2) & (w = MonRight/2) & (h = MonBottom/2))
	WinMove, A,,0,MonBottom/2,MonRight/2, MonBottom/2
return

^!NumPad3:: ;우하 정렬
WinGetPos, x, y, w, h, A
If Not ((x = MonRight/2) & (y = MonBottom/2) & (w = MonRight/2) & (h = MonBottom/2))
	WinMove, A,,MonRight/2,MonBottom/2,MonRight/2, MonBottom/2
return

^!+x::
ExitApp
  1. 키패드 위에 Num 불 들어온 상태 [본문으로]

관련글 더보기

댓글 영역