Windows 7'de pencereyi ortalamak için klavye kısayolu


18

Windows 7'de Win-left oku ve Win-sağ oku gerçekten ekranın sol veya sağ tarafının% 50'sini kaplayacak şekilde kullanışlı buluyorum. Ancak, bir pencerenin ekranın% 50'sini kaplamasını ve ortalanmasını sağlayacak herhangi bir komut var mı? Pencerenin boyutunu ayarlamasa bile, bir pencereyi dikey ve yatay olarak ortalamak için bir klavye kısayolu var mı? Teşekkürler.

Yanıtlar:


3

WinSplit Devrimi'ni kontrol etmelisiniz ; İhtiyacınız olan şeye sahiptir ve özelleştirilebilir.

alternatif metin


WinSplit'in penceresindeki orta düğmenin 3 tıklaması gibi görünüyor, odaklanmış penceremin, monitörün tüm yüksekliğini uzatmasına ve doldurmasına neden oluyor ve bu da yatay ve ortalanmış durumda. :)
Sarah Vessels

13

Windows + ok tuşları burada oldukça kullanışlıdır.

  • (Windows)+ ← (Left) ve + → (Right) ekranın sol veya sağ% 50'sine gidip pencereyi orijinal boyutuna ve konumuna geri döndürerek geçiş yapar.
  • + ↑ (Up)pencereyi büyütür.
  • + ↓ (Down) , ekranı ekranı kaplarsa geri yükler ve aksi takdirde simge durumuna küçültür.

2
Bu benim için yapmadı. Görünüşe göre benim penceremi küçültür ya da pencere ekranı kaplarsa geri yükler.
Sarah Vessels

2
Makinemde, çift monitörde, Win-Left'a tıklayabilirim ve bu ekranda% 50 sola gidecektir. Win-Left'a tıklamaya devam edersem diğer ekranda% 50 sağa, bir sonraki ortalanacak ve son olarak diğer ekranda sola gidecektir. Win-Right tersini yapıyor
wbeard52

1
Aşağı Kazanma açık bir şekilde yanlıştır. Bir pencereyi büyütülmüş durumdan geri yükler veya küçültür (zaten geri yüklendiyse). Pencerenin ortasında hiçbir şey yapmaz.
Joey

3
@ wbeard52: Win-Left'u tekrar tekrar denedim ve ekranın sol tarafında% 50, ekranın sağ tarafında% 50 ve penceremin başlangıçta nasıl olduğu (ortalanmış, küçük değil).
Sarah Vessels

2
Win-Left veya Win-Right tuşlarına arka arkaya basmak, pencereyi mevcut monitörlerin% 50'sinin sol / sağ tarafına yerleştirmek için döngü yapar, ardından önceki konumuna geri koyar. Pencereyi hiçbir şekilde ortalamaz.
dgw

13

Bu tam olarak merkezleme için değildir, ancak pencereyi kolayca sola ve sağa (ve yukarı ve aşağı) hareket ettirmenizi sağlar.

  1. Bir pencereye odaklanın.
  2. Alt+ Tuşuna basın Space.
  3. Tuşuna basın M(“Taşı” için).
  4. Pencereyi tam olarak istediğiniz yere taşımak için ok tuşlarını kullanın.
  5. Tamamlandığında düğmesine basın Enter.

1
Bu çözümün yüklenmesi için ek bir yazılım gerekmez. Kesin çözüm olmayabilir, ancak işi
bitirmenin

Bu yalnızca bir pencere ekranı kaplamamışsa çalışır.
TylerH

@TylerH: bu doğru. Ancak, yalnızca pencereleri + sağ tuşlara (pencereyi% 50 sağ konuma yerleştirmek için) basmanız ve ardından sola taşımak için bu cevaptaki talimatları izlemeniz gerekir.
Rasmus Larsen

5

AutoHotkey'i kullanmanızı öneririm .
Tam olarak sorduğunuz şeyi yapan örnek bir komut dosyası başka bir soruya yanıt olarak zaten sağlanmıştır .
İşte betiğin kodu:

#!Up::CenterActiveWindow() ; if win+alt+↑ is pressed

CenterActiveWindow()
{
    ; Get the window handle from de active window.
    winHandle := WinExist("A")

    VarSetCapacity(monitorInfo, 40)
    NumPut(40, monitorInfo)

    ; Get the current monitor from the active window handle.
    monitorHandle := DllCall("MonitorFromWindow", "uint", winHandle, "uint", 0x2)
    DllCall("GetMonitorInfo", "uint", monitorHandle, "uint", &monitorInfo) 

    ; Get WorkArea bounding coordinates of the current monitor.
    A_Left   := NumGet(monitorInfo, 20, "Int")
    A_Top    := NumGet(monitorInfo, 24, "Int")
    A_Right  := NumGet(monitorInfo, 28, "Int")
    A_Bottom := NumGet(monitorInfo, 32, "Int")

    ; Calculate window coordinates.
    winW := (A_Right - A_Left) * 0.5 ; Change the factor here to your desired width.
    winH := A_Bottom
    winX := A_Left + (winW / 2)
    winY := A_Top

    WinMove, A,, winX, winY, winW, winH
}

Pencerenin alt kısmı görev çubuğunun altına gitmeyecek şekilde hafif bir ayar yaptım ve windowWidth0.7'den 0.5'e değiştirdim.

Düzenleme : artık birden çok monitörle çalışıyor ve çalışma alanını üst ve alt değerler için kullanıyor.

Bir yan notta, WinSplit Devrimi durduruldu ve yerine MaxTo adlı ücretli bir uygulama eklendi.
AutoHotkey, çok güçlü olmanın ve çok daha fazla kullanım senaryosunun yanı sıra ücretsiz ve açık kaynaklıdır.


1
Neredeyse harika ... Tek ciddi sorun dışında. Birden çok genişletilmiş monitörle, bu her zaman bir pencereyi ikincil bir monitörden ana ekrana taşır. Bunu nasıl düzeltebileceğine dair bir fikrin var mı? WinMove herhangi bir ekstra parametreye sahip görünmüyor.
DKroot

@DKroot İkinci bir ekranla denemek zorunda kalacağım. Bunu sadece tek bir ultrawide üzerinde kullanıyorum. Doküman WinMove'da şunları söylüyor: «x ve y koordinatlarının çoklu monitör sistemlerini desteklemesi ve bir pencerenin tamamen ekran dışına taşınmasına izin vermek için negatif değerlere izin verilir.» Forumda çoklu monitör komut dosyası örnekleri var, ancak daha da karmaşıklaşıyor: autohotkey.com/board/topic/…
vctls

Link için çok teşekkür ederim! Senaryonuzu ve bağlantılı senaryoyu mükemmel bir şekilde birleştirebildim. (Bağlantılı komut dosyası yeniden boyutlandırılmaz, bu nedenle örneğin, büyütülmüş pencerelerde çalışmaz). Komut dosyası yorumlara eklenemeyecek kadar uzun. Ayrı bir cevap olarak göndermemi ister misiniz?
DKroot

Senaryonuzda başka bir test notu: ilginç bir şekilde, 3 monitörlü bir kurulumda, örneğin # 1 ana, # 2 ve # 3 # 1 ve # 3 üzerinde iyi çalışıyor, ancak pencereleri # 2'den # 1'e taşıyor.
DKroot

1
Ha, bu garip. Birden çok monitörde çalışmasını sağlamak için güncelledim. Mümkün olduğunca kısa ve konu üzerinde tutmaya çalıştım, ancak forumdaki gibi Deluxe Sürümü'ne gitmek isteyebilirsiniz;)
vctls

Sitemizi kullandığınızda şunları okuyup anladığınızı kabul etmiş olursunuz: Çerez Politikası ve Gizlilik Politikası.
Licensed under cc by-sa 3.0 with attribution required.