2013-06-21 1 views
0

solution I need a modification to의 경우 @Jeff Axelrod에게 제공됩니다. 나는 왼쪽 모니터의 왼쪽에있는 Windows 작업 표시 줄을 "존중"하도록이 설정을 변경하는 방법을 알 수 없습니다. 내 Windows 7 작업 표시 줄에 여러 개의 사용자 지정 도구 모음이 있으므로 몇 인치 정도 큽니다. 아래의 코드는 두 모니터에서 현재 창을 최대화하지만 확장 된 창의 일부는 내 작업 표시 줄 아래에 있습니다.왼쪽의 Windows 7 작업 표시 줄이있는 듀얼 모니터에서 AutoHotKey를 사용하여 창을 확장하는 방법은 무엇입니까?

+#Up:: 
WinGetActiveTitle, Title 
WinRestore, %Title% 
SysGet, X1, 76 
SysGet, Y1, 77 
SysGet, Width, 78 
SysGet, Height, 79 
WinMove, %Title%,, X1, Y1, Width, Height 
return 

내가 여기에 간단하게 뭔가를 누락 확신하지만

:-) 그 날의 일이었다 다음은 윈도우 내 작업 표시 줄 아래에 얼마나 보여주는 스크린 샷입니다. 는 최대화 된 창은 아래 것을 가장 분명하다 왼쪽 상단을 참조하십시오 : 당신은 당신의 스크린 샷의 모습으로 MonitorWorkArea, 즉 MonitorWorkAreaLeft를 찾고 있습니다

screenshot of window "not respecting" taskbar

+0

스크린 샷이 도움이 될 것입니다. – MCL

+0

좋은 지적, 고마워. 나는 그것으로 나의 포스트를 새롭게 할 것이다. – AMM

답변

1

.

스크립트는 모든 모니터 정보를 얻을 수 있습니다 : 당신은 당신이 사용하고자하는 올바른 모니터를 찾으면

SysGet, MonitorCount, MonitorCount 
SysGet, MonitorPrimary, MonitorPrimary 
Message .= "Monitor Count:`t" MonitorCount "`nPrimary Monitor:`t" MonitorPrimary 
Loop, %MonitorCount% 
{ 
    SysGet, MonitorName, MonitorName, %A_Index% 
    SysGet, Monitor, Monitor, %A_Index% 
    SysGet, MonitorWorkArea, MonitorWorkArea, %A_Index% 
    Message .= "`n`nMonitor:`t#" A_Index "`nName:`t" MonitorName "`nLeft:`t" MonitorLeft "(" MonitorWorkAreaLeft " work)`nTop:`t" MonitorTop " (" MonitorWorkAreaTop " work)`nRight:`t" MonitorRight " (" MonitorWorkAreaRight " work)`nBottom:`t" MonitorBottom "(" MonitorWorkAreaBottom " work)" 
} 

msgbox % Message 

는, 좌표 값을 사용

SysGet, MonitorWorkArea, MonitorWorkArea, 2 
msgbox % MonitorWorkAreaLeft 

편집을

이렇게하면 값을 가져 와서 실행할 때마다 창이 이동합니다.

SysGet, MonitorWorkArea, MonitorWorkArea, 1 ; Leftmost monitor 
X1 := MonitorWorkAreaLeft 
Y1 := MonitorWorkAreaTop 
SysGet, MonitorWorkArea, MonitorWorkArea, 2 ; Rightmost monitor 
Width := MonitorWorkAreaRight - X1 
Height := MonitorWorkAreaBottom 

WinGetActiveTitle, Title 
WinMove, % Title,, % X1, % Y1, % Width, % Height 
+0

고마워요! 왜냐하면 나는 아직도 배우기 때문에, 나는 정확하게 이것을 구술 할 것인지 확신 할 수 없다 : X1, Y1, Width, and에 대한 값을 생성하는 식에서 어떻게 든 스크립트를 사용할 수 있습니까? Height'를 사용하여 스크립트가 실행될 때마다 최신 값을 갖도록할까요? – AMM

+0

스크립트는 실행할 때마다 값을 가져옵니다. 나는 당신이 묻고있는 것을 따르지 않는다고 생각합니다. –

+0

죄송합니다! 이것은 나의 지식 부족이 그 길을 걷고있는 곳입니다! 표현식을 삭제하고 스크립트에서 얻은 값인'WinMove, % Title % ,, 202, 0, 2998, 900'을 수동으로 입력하여 내 질문에서 원래 스크립트를 수정했습니다. 만약 내가 + + Up을 누를 때마다 올바른 값을 먼저 검사 할 수 있도록 변수 값을 생성하기 위해 스크립트를 사용할 수 있을지 궁금합니다. – AMM

관련 문제