강좌 / 팁

소프트웨어 StrokesPlus 창닫기/탭닫기 조정 스크립트

2013.11.19 12:18

유리얼음 조회:5030 추천:2

오토핫키로 했었는데.. -0- strokesPlus로 직접해보았습니다....

익스/크롬 그리고 일반응용프로그램 창닫기 스크립트..

뭐 완벽하진 않지만.. 꽤 직관적으로 사용할만하다고 생각함;;

아래 스크립트는 꽤 다른분들에게도 유용할수 있을듯함;;

마우스 위치(제스처 시작위치)를 기준으로 작동

글로벌액션에 등록하면 됩니다

===============================================================================================================

acActivateWindow(nil, gsx, gsy, 0)                                             -- 제스처가 시작하는 곳의 마우스위치 아래 있는창 활성화
local iClassName = acGetClassName(acGetForegroundWindow(), nil, nil) -- 활성화된 창의 클래스명 얻기(프로그램 ID)
if iClassName == "IEFrame" or iClassName == "Chrome_WidgetWin_1" then -- 프로그램이 익스이거나 크롬이면
   acSendKeys("^{F_4}")                                                                  -- 탭닫기 단축키 보내기 (컨츄롤f4)
else                                                                                                   --프로그램이 익스나 크롬이 아니면
   local iTorrent = acGetExecutableName(acGetForegroundWindow(), nil, nil) --유토렌트를 변수에저장하고(이유는밑에서별도설명)
  acSendKeys("%{F_4}")                                                                          -- 창닫기 단축키 보내기(알트 f4)
  acDelay(200)                                                                                        -- 0.2초 대기타다가
  if acGetClassName(acGetForegroundWindow(), nil, nil) == "Shell_TrayWnd" or iTorrent == "utorrent.exe" then --밑에서 별도설명
     acSendKeys("%{ESC}")
     end
end

==================================================================================================================

활성창이 닫히면 바로 아래창이 자동으로 활성화 되어야되는데, 프로그램을 시작메뉴에서 시작한경우 그렇지 못합니다..

같은 이유로 유토렌트도 종료하면-0- 포커스가 어디로 공중분산되버려서....종료후 바로 아래 창이 활성화되도록

단축키 ALT+ESC키를 보냅니다 %{ESC)

론쳐에서 따로 프로그램을 실행하시는분들은 빨간색 부분을 클래스명만 교체하면 됩니다..

위 스크립트는 일반적으로 사용될수 있도록 좀 편집했고 아래는 제가 실제 사용중인 스크립트입니다..

==================================================================================================================

acActivateWindow(nil, gsx, gsy, 0)
local iClassName = acGetClassName(acGetForegroundWindow(), nil, nil)
if iClassName == "IEFrame" or iClassName == "Chrome_WidgetWin_1" then 
 if acGetWindowBottom(acFindWindow("Shell_TrayWnd"), nil, nil) == 900 then  
  if acGetPixelBByPoint(1020, 28) == 251 then  
   acSendKeys("%{F_4}")
  else
   acSendKeys("^{F_4}")
  end                                                                     
 elseif acGetPixelBByPoint(860, 28) == 251 then
   acSendKeys("%{F_4}")
  else                                                                      
   acSendKeys("^{F_4}")
  end                                                                     
elseif iClassName == "QWidget" then                                       
 acTerminateProcess(acGetForegroundWindow(), nil, nil)
 else
 local iTorrent = acGetExecutableName(acGetForegroundWindow(), nil, nil)
 acSendKeys("%{F_4}")
 acDelay(200)
  if acGetClassName(acGetForegroundWindow(), nil, nil) == "Shell_TrayWnd" or iTorrent == "utorrent.exe" then
   acSendKeys("%{ESC}")
  end
end

======================================================================================================

위에거와 다른것은, 알트F4로 프로그램을 닫는경우 트레이로 가는 것들(슈거싱크)이 있는데  그넘들만 프로세스로 종료하고(빨강색부분) 익스에서 컨트롤 f4로 종료하면 딜레이가 좀 있어서 창이 하나 남은 경우 알트F4로 종료되도록 했습니다.(녹색부분)

첫번째 탭만 남은경우 (1020,28) 좌표가 색이 다르다는 점을 이용하는 것이기 때문에 좌표만 조정해서 응용가능.

마지막으로 프로젝터때문에 해상도를 두개 사용하는데, 그때마다 위에 언급만 좌표의 위치가 달라지기 때문에 별도도 지정한겁니다

(파랑색부분) 해상도 구하는것은 따로 없는것 같아서 작업표시줄의 좌표를 구해서 변칙적으로 활용해보았습니다.


기본적으로 스크립트 양보다는 컴퓨터가 수행하는 양을 줄일수 있을것 같은 방향으로-0-해보았는데 아무래도

순수 문과생인 초보인지라.... 허접한...

번호 제목 글쓴이 조회 추천 등록일
[공지] 강좌 작성간 참고해주세요 gooddew - - -
650 소프트웨어| 백신 Trust Port 6개월 프로모션, Webroot 6개월 프로모션 ... [5] sous_la_pl 4899 3 11-11
649 소프트웨어| VMware workstation 사용법(본문 수정-2) [76] 고양이2 14943 30 11-14
648 소프트웨어| 한컴오피스 2014 업데이트 설정하는 법 [7] 유기농초코 11535 2 11-17
» 소프트웨어| StrokesPlus 창닫기/탭닫기 조정 스크립트 [2] 유리얼음 5030 2 11-19
646 소프트웨어| StrokesPlus 창닫기/탭닫기 조정 스크립트(수정본) [2] 유리얼음 4280 3 11-19
645 소프트웨어| 압축파일 바로 열기(아직도 모르시는 분들을 위하여) [17] suk 8513 9 11-19
644 소프트웨어| KMSv6 Linux Bootable ISO 의 사용(추가) [5] 링고스타 7563 3 11-20
643 소프트웨어| 한컴오피스 2014 홈에디션 MLP 정품 다운로드 방법 [7] 일교차 18619 1 11-20
642 소프트웨어| 안드로이드폰에서 구동하는 KMS에뮬 [11] 링고스타 14652 10 11-20
641 소프트웨어| 오토핫키, 스크롤 가속도 주기 스크립트 유리얼음 4473 3 11-21
640 소프트웨어| 트루이미지(Acronis True Image) 추가본(본문 수정2) [81] 고양이2 9602 32 11-22
639 소프트웨어| 포토샵 기술 326가지(이미지파일) [18] DOS 11729 11 11-23
638 소프트웨어| 비트디펜더 토탈 시큐리티 6개월 프로모션 [6] sous_la_pl 5041 5 11-23
637 소프트웨어| 트루이미지(Acronis True Image) 추가본②(본문 수정) [91] 고양이2 9135 62 11-26
636 소프트웨어| 바이두 직접 공유를 위한 링크 생성 [10] 배짱이 7054 3 11-29
635 소프트웨어| [이벤트 종료] CyberGhost 5 VPN 12개월 키 받고, 토렌트 i... [8] sous_la_pl 6451 4 12-01
634 소프트웨어| 램디스크(Ram Disk) 만들기 - 본문 수정 [60] 고양이2 9444 50 12-02
633 소프트웨어| 리얼텍 유선,무선인터넷 끊김현상 해결하기. [9] 컴도깨비 13320 2 12-03
632 소프트웨어| Kingsoft Office "Online Templates"탭 없이 시... 명품도라지 3384 1 12-05
631 소프트웨어| 오브젝트독(Object Dock) 이용하기 - (본문 수정) [37] 고양이2 5842 27 12-07
XE1.11.6 Layout1.4.8