2012-03-22 21 views
11

AutoHotkey'i kullanarak, birden çok monitörde bir pencereyi genişletmek/büyütmek/genişletmek için bir kısayol tuşunu nasıl bağlarım?Birden çok monitörde bir pencereyi nasıl en üst düzeye çıkarabilirim?

Şu an bunu, fareyle pencereleri elle uzatarak yapmak zorundayım. Bunu yapan özel araçlar olduğunu biliyorum, ancak zaten bir AutoHotkey komut dosyası çalıştırıyorum ve çalışmaya devam ettiğim araç sayısını sınırlandırıyorum.

cevap

17

Tüm ekranlarda bir pencereyi en üst düzeye çıkarmak için, Shift + Windows + Up kombinasyonunu eşleştirerek, bunu nasıl yaptım. Bu, seçilen pencereyi en üst düzeye çıkaran Windows 7'nin Windows + Up kısayolunu övüyor.

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

Bu büyü ne 76,77,78,79 değerlerinden? – kevinf

+0

Bu pencereyi VNC istemcisi ile çalışır hale getirmek için Ayarlar-> Giriş ve "Özel anahtarları doğrudan VNC Sunucusuna geçir" seçeneğinin işaretini kaldırın. – stevesliva

5

Ben Konuyu biraz eski olduğunu biliyorum ama bu kadar ı bulmak mümkün oldum birden fazla monitöre maksimize span iyi "özgür" bir yoldur. Ive şimdi windows 8 ve 7 64bit sistemlerde şimdi kullandı ve bu makro muhtemelen benim varsayılan araç setinin bir parçası olacak :) Teşekkürler yığınlar.

Ve neden gönderiyorum, UP makroyu çalıştırdığında pencereyi tek bir ekrana geri yüklemek için pencereyi tek bir monitör boyutuna geri yüklemek için biraz değiştirdim. İstenirse -monitor boyutu. Bunu yapmak için bir shift + windows + combo eklendi. Pencereler eski pozisyonunu hatırlamak daha iyi olabilirdi, ama ben bir autohotkey uzmanı değilim ve bu benim amaçlarım için çalışıyor ... (ayrıca "A_ScreenWidth, A_ScreenHeight" i değiştirmek için 800, 600 söylemek için daha küçük bir şey için değiştirebilirsiniz ile, ekranı ortalamak için 0,0'yu ayarlayınız, yani 300,200)

Autohotkey exe derleyicisini kullanın ve başka bir bilgisayarda kullanmak için taşınabilir bir exe'niz var. (Yani benim ofis bilgisayarı exe cezası çalışır, ama tam programı yüklemek için yönetici hesabı gerekli olurdu: D)

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

+#Down:: 
    WinGetActiveTitle, Title 
    WinRestore, %Title% 
    WinMove, %Title%,, 0, 0, A_ScreenWidth, A_ScreenHeight 
return 
3

ayağımda görev çubuğuna sahip iş yerinde ve evde iki monitör var Bu yüzden pencereyi doğru bir şekilde değiştirdiğinden emin olmak için bu betiği değiştirmem gerekiyordu.

+#Up:: 
    WinGetActiveTitle, Title 
    WinRestore, %Title% 
    SysGet, Mon1, MonitorWorkArea, 1 
    SysGet, Mon2, MonitorWorkArea, 2 
    Monitor1Width := Mon1Right - Mon1Left 
    Monitor2Width := Mon2Right - Mon2Left 
    MonitorsWidth := Monitor1Width + Monitor2Width 
    SysGet, Height, 79 
    WinMove, %Title%,, %Mon1Left%, %Mon1Top%, %MonitorsWidth%, %Mon2Bottom% 
return 

+#Down:: 
    WinGetActiveTitle, Title 
    WinRestore, %Title% 
    SysGet, Mon2, MonitorWorkArea, 1 
    Monitor1Width := Mon2Right - Mon2Left 
    WinMove, %Title%,, %Mon2Left%, %Mon2Top%, %Monitor1Width%, %Mon2Bottom% 
return