매크로

정보
2015.10.22 18:07

팝업 알림, CleanNotify

조회 수 433 추천 4 댓글 3
hqdefault.jpg hqdefault.jpg

이번 연초에 작성했던 스크립트인데, 여기엔 안 올린거 같아서 올립니다



라운드 처리가 안예뻐서 GDI로 만들고 있는데 귀찮네요 굉장히...


/*
CleanNotify by 예지력 (http://knowledgeisfree.tistory.com)
 
// Syntax
 
new CleanNotify("타이틀", "텍스트 " , 넓이, 길이, "포지션", 시간)
 
시간을 "P" 로 설정할 경우, 오브젝트를 파기하기 전까지 계속 존재합니다
 
인스턴스.Delete()
→ 오브젝트 제거
*/

 
#SingleInstance force
#NoEnv
SetBatchLines, -1
 
new CleanNotify("CleanNotify", "포지션 vc hc, 3초" , 600, 210, "vc hc", 6)
new CleanNotify("CleanNotify", "포지션 t hc" , 600, 210, "t hc", 3)
new CleanNotify("CleanNotify", "포지션 b hc" , 600, 210, "b hc", 3)
new CleanNotify("CleanNotify", "포지션 기본, b r" , 600, 210, "b r", 3)
new CleanNotify("CleanNotify", "포지션 b l" , 600, 210, "b l", 3)
new CleanNotify("CleanNotify", "포지션 t l" , 600, 210, "t l", 3)
return
 
class CleanNotify {
 
__New(Title, Msg, pnW := "700", pnH := "300", Pos := "b r", Time := "10")
{
 
Critical
 
LastFound := WinExist()
Gui, new, +hwndhNotify -DPIScale
this.hNotify := hNotify
 
Gui, % this.hNotify ": Default"
Gui, % this.hNotify ": +AlwaysOnTop +ToolWindow -SysMenu -Caption +LastFound"
WinSet, ExStyle, +0x20
WinSet, Transparent, 0
 
Gui, % this.hNotify ": Color", 0xF2F2F0
Gui, % this.hNotify ": Font", c0x07D82F s18 wBold, Segoe UI
Gui, % this.hNotify ": Add", Text, % " x" 20 " y" 12 " w" pnW-20 " hwndhTitle", % Title
this.hTitle := hTitle
 
Gui, % this.hNotify ": Font", cBlack s15 wRegular
Gui, % this.hNotify ": Add", Text, % " x" 20 " y" 56 " w" pnW-20 " h" pnH-56 " hwndhMsg", % Msg
this.hMsg := hMsg
Gui, % this.hNotify ": Show", % "W " pnW + 50 " H" pnH + 20 " NoActivate"
 
this.WinMove(this.hNotify, Pos)
WinSet, Region,0-0 w%pnW% h%pnH% R40-40, % "ahk_id " this.hNotify
Critical Off
this.winfade("ahk_id " this.hNotify, 210, 5)
 
if (Time != "P")
this.Timer(ObjBindMethod(this, "TimerExpired"), Time * 1000)
 
if (WinExist(LastFound))
Gui, % LastFound ": Default"
      }
 
__Delete()
{
this.Destroy()
}
 
Destroy()
{
this.winfade("ahk_id " this.hNotify, 0, 5)
Gui, Destroy
}
 
Timer(Fir, Sec)
{
SetTimer, % Fir, % "-" Sec
}
 
TimerExpired()
{
this.Destroy()
}
 
WinMove(hwnd,position)
{
   SysGet, Mon, MonitorWorkArea
   WinGetPos,ix,iy,w,h, ahk_id %hwnd%
   x := InStr(position,"l") ? MonLeft : InStr(position,"hc") ?  (MonRight-w)/2 : InStr(position,"r") ? MonRight - w : ix
   y := InStr(position,"t") ? MonTop : InStr(position,"vc") ?  (MonBottom-h)/2 : InStr(position,"b") ? MonBottom - h : iy
   WinMove, ahk_id %hwnd%,, x, y
}
 
winfade(w:="",t:=128,i:=1,d:=10) ; Thanks, Joedf
{
w:=(w="")?("ahk_id " WinActive("A")):w
t:=(t>255)?255:(t<0)?0:t
WinGet,s,Transparent,%w%
s:=(s="")?255:s ;prevent trans unset bug
WinSet,Transparent,%s%,%w%
i:=(s<t)?abs(i):-1*abs(i)
while(k:=(i<0)?(s>t):(s<t)&&WinExist(w)) {
WinGet,s,Transparent,%w%
s+=i
WinSet,Transparent,%s%,%w%
sleep %d%
}
}
}




List of Articles
분류 제목 글쓴이 최근변경 추천
정보 (안내) 글내용확인하시고 자삭하세요 27 snf 2015.02.23 0/0
정보 (펌)픽셀서치를 대체할 수 있는 비활성픽셀칼라 활용 ... 6 앙꼬호빵 2019.05.26 0/0
정보 adb 관련 비활성화 이미지 서치 쉽게하기 6 운하파는 2016.07.02 1/0
정보 adb를 이용한 연속 터치 및 키입력 TIP 7 하연데디 2019.03.05 1/0
정보 AHK_Helper.exe 오토핫키 도움말 프로그램 입니다. 2 월드걸스 2023.02.24 0/0
정보 Array 확장 13 모바게 2015.07.16 3/0
정보 Autohotkey에서 함수와 ByRef 사용에 대해... 12 류Macro 2015.07.12 1/0
정보 ControlSend 명령을 이용한, 카톡으로 알림받기 간단하... 10 죠케빈 2018.01.02 0/0
정보 DllCall "mouse_event" 속도조절하는 법 rkfdma 2016.12.08 0/0
정보 DynaScript - Child 프로세스로 코드 실행 13 예지력1 2019.07.16 3/0
정보 gdip 간단 응용 팁들 13 매크로맨서 2015.04.18 0/0
정보 gdip 비활성 이미지 서치, postmessage 모모 소스입니다. 6 사이다업 2021.01.23 1/0
정보 Gdip_all.ahk를 이용한 Bitmap의 size 변경 함수 6 할거엄따구 2022.12.14 1/0
정보 Gdip를 이용한 클립보드에 있는 이미지를 통한 이미지서치 11 암드래 2016.07.19 0/0
정보 GUI - 파일(폴더) 목록을 DropDownList로 만들기 14 모바게 2016.06.13 3/0
정보 Gui- dropdownlist 사용하기 기초내용 (모르시는 분만 ... 3 으뜸어린이 2017.09.07 1/0
정보 g라벨? v라벨? 설명좀해주세요 5 이리오리오 2016.10.25 0/0
정보 INI 를 쉽게 사용해봅시다. 11 모바게 2017.11.01 3/0
정보 ListBox로 로그창을 만들어보자! 고음l 2017.11.18 1/0
정보 List에 해당하는 GUI 팁 9 외치기 2015.08.24 2/0
Board Pagination Prev 1 23456 7 Next
/ 7

전체 최신 인기글

전체 주간 인기글