期望实现的功能是当按下win+f时,使软件a和软件b铺满显示器2(副屏幕),代码如下:
#f:: ; 当按下Win+F时
targetMonitor := 2 ; 目标显示器设置为2(副屏幕)
SysGet, monitor, Monitor, %targetMonitor% ; 获取副屏幕的信息
appAWidth := (monitor.Right – monitor.Left) * 0.75 ; 计算软件a的宽度
appBWidth := (monitor.Right – monitor.Left) * 0.25 ; 计算软件b的宽度
; 调整软件a的窗口位置和大小
WinGet, idA, List, ahk_exe PDFXEdit.exe ; 获取软件a的所有窗口ID
Loop, % idA.Count() {
thisID := idA[A_Index]
WinMove, ahk_id %thisID%,, monitor.Left, monitor.Top, appAWidth, monitor.Bottom – monitor.Top ; 调整软件a窗口
}
; 调整软件b的窗口位置和大小
WinGet, idB, List, ahk_exe Xtranslator.exe ; 获取软件b的所有窗口ID
Loop, % idB.Count() {
thisID := idB[A_Index]
WinMove, ahk_id %thisID%,, monitor.Left + appAWidth, monitor.Top, appBWidth, monitor.Bottom – monitor.Top ; 调整软件b窗口
}
return