W systemie Windows 7 wiem, że możesz zrobić Windows+, Leftaby umieścić okno w lewej połowie ekranu. Czy jest jakaś funkcja, która działa na górze i na dole?
W systemie Windows 7 wiem, że możesz zrobić Windows+, Leftaby umieścić okno w lewej połowie ekranu. Czy jest jakaś funkcja, która działa na górze i na dole?
Odpowiedzi:
Nie. Jedynymi dostępnymi opcjami przyciągania są:
Edycja: inne niesamowite kombinacje, które mogą Ci się spodobać:
up
lub down
, np., Aby przyciągnąć do lewego górnego rogu . Nie to, czego chciał PO, ale może być pomocne dla innych.
Aby to osiągnąć, wykonuję następujące kroki:
Uwaga: Musisz zminimalizować wszystkie okna, których nie chcesz układać w stos. Oto, co ma zrobić krok 1.
Napisałem mały skrypt AutoHotKey, aby przyciągać okna u góry iu dołu, ponieważ byłem również sfrustrowany tym. Możesz pobrać go z mojej strony internetowej: http://www.pixelchef.net/how-snap-windows-horizontally-windows-7
; Move window up (Windows + Shift + UP ... NOTE must maximize window first)
+#Up::
WinGetPos,X,Y,W,H,A,,,
WinMaximize
WinGetPos,TX,TY,TW,TH,ahk_class Shell_TrayWnd,,,
; if this is greater than 1, we're on the secondary (right) monitor. This
; means the center of the active window is a positive X coordinate
if ( X + W/2 > 0 ) {
SysGet, MonitorWorkArea, MonitorWorkArea, 1
WinMove,A,,X,0 , , (MonitorWorkAreaBottom/2)
}
else {
SysGet, MonitorWorkArea, MonitorWorkArea, 2
WinMove,A,,X,0 , , (MonitorWorkAreaBottom/2)
}
return
; Move window down (Windows + Shift + DOWN ... NOTE must maximize window first)
+#Down::
WinGetPos,X,Y,W,H,A,,,
WinMaximize
WinGetPos,TX,TY,TW,TH,ahk_class Shell_TrayWnd,,,
; if this is greater than 1, we're on the secondary (right) monitor. This
; means the center of the active window is a positive X coordinate
if ( X + W/2 > 0 ) {
SysGet, MonitorWorkArea, MonitorWorkArea, 1
WinMove,A,,X,MonitorWorkAreaBottom/2 , , (MonitorWorkAreaBottom/2)
}
else {
SysGet, MonitorWorkArea, MonitorWorkArea, 2
WinMove,A,,X,MonitorWorkAreaBottom/2 , , (MonitorWorkAreaBottom/2)
}
return
WindowSpace zapewnia tę funkcjonalność. Aby zrobić to, o co prosisz:
Settings
Zrzut ekranu:
Obecnie nie mam przed sobą komputera z systemem Windows 7, ale od czasu Windows 95 (lub nawet wcześniej) istnieje możliwość układania okien w poziomie. Zminimalizuj wszystko oprócz dwóch okien, które chcesz wyświetlić u góry iu dołu, kliknij pasek zadań prawym przyciskiem myszy i wybierz opcję Układaj okna poziomo. Zmieni rozmiar każdego okna, aby zajął połowę pionowego obszaru ekranu. Nie jest to przydatne w przypadku pojedynczego okna, a jak stwierdzono w innej odpowiedzi, nie ma do niego skrótu klawiaturowego, ale czasami jest to przydatne.
Korekta: w systemie Windows 7 nazywa się to „Pokaż okna ułożone w stos”
Podobnie jak w Northben, napisałem również skrypt AutoHotKey, choć trochę inaczej, więc pomyślałem, że zasługuje na własną odpowiedź. Ten skrypt powinien działać z dowolną liczbą monitorów lub orientacji monitorów.
Polecenia są przypisane do Windows+ Ctrl+ Upi Downzamiast tego, Shiftaby nie kolidować z istniejącym Windows+ Shift+ Up.
Działa to podobnie do pełnego przyciągania wysokości ekranu ( Windows+ Shift+ Up), ponieważ okno zachowuje swoje położenie i szerokość w poziomie. Można to łatwo zmienić, aby działało podobnie do przyciągania lewej lub prawej połowy ( Windows+ Leftlub Right) poprzez odkomentowanie ; WinMaximize, A
linii. Jeśli chcesz zachować domyślne zachowanie, ale czasami korzystasz z zachowania połowy przyciągania, po prostu zmaksymalizuj okno przed przyciąganiem.
Działa z Windows 7 64-bit i AutoHotKey v1.1.14.03.
;-------------------------------------------------------------------;
; Returns the maximum or minimum value for any number of inputs
; i.e. Max(5,4,7,10) will return 10
;-------------------------------------------------------------------;
Min(params*)
{
r := params[1]
for index, param in params
if (param < r)
r := param
return r
}
Max(params*)
{
r := params[1]
for index, param in params
if (param > r)
r := param
return r
}
;-------------------------------------------------------------------;
; WindowsKey+Ctrl+Up / WindowsKey+Ctrl+Down
; Resizes window to half the screen height and moves it to the top
; or bottom of whichever screen has the largest overlap.
; By default, the window retains its horizontal (x) position and
; width. To change this, uncomment the WinMaximize line.
;-------------------------------------------------------------------;
UpDownSnap(Direction)
{
; WinMaximize, A
WinGetPos, x, y, w, h, a, , ,
SysGet , Count, MonitorCount
refArea := 0
Loop, %count%
{
SysGet, m, MonitorWorkArea, %A_Index%
xo := Max(0, Min(x + w, mRight) - Max(x, mLeft))
yo := Max(0, Min(y + h, mBottom) - Max(y, mTop))
area := xo * yo
if (area > refArea)
{
monTop := mTop
monBottom := mBottom
refArea := area
}
}
; If the refArea is still equal to 0, the window does
; not overlap with any monitors. Wat?
if (refArea > 0)
{
if (direction = 1)
newY := monTop
Else
newY := (monBottom - monTop) / 2 + monTop
WinMove , a, , x, newY, w, (monBottom - monTop) / 2
}
}
^#Up::UpDownSnap(1)
^#Down::UpDownSnap(0)
The following variable name contains an illegal character: "params*"
. Na razie używam skryptu @ northben
Najlepszy program, jaki kiedykolwiek użyłem, który osiąga dokładnie to + więcej, to WinSplit Revolution: http://winsplit-revolution.com/
Bardzo go polecam, ponieważ jest niezwykle prosty w obsłudze, a nawet działa dobrze z wieloma monitorami.
Film demonstracyjny: http://winsplit-revolution.com/screenshots/videos-demos
Ta aplikacja jest bezpłatna i wydana na licencji Creative Commons Uznanie autorstwa-Użycie niekomercyjne-Bez utworów zależnych 3.0.
EDYTOWAĆ:
Wygląda na to, że WinSplit nie jest już dostępny, witryna została przejęta przez Digital Creations AS, która ma własną wersję tego typu oprogramowania i nie jest już darmowa
Jak sugeruje Deszcz tutaj , PowerResizer działa dobrze. Niezbyt konfigurowalny - nie można zmieniać skrótów klawiaturowych, ale jest to co najmniej open source. Jak zauważa JoeB, możesz nacisnąć je podczas przeciągania okna: W, aby przejść w górę, i Z, aby przejść w dół. A to ruch w lewo, S to ruch w prawo. Lub po prostu przeciągnij okno do krawędzi. Naciśnięcie 1,2,3 i 4 podczas przeciągania spowoduje ćwierć kroku do rogu. Jestem z tego zadowolony, wypróbuj.
Jeśli masz kartę graficzną AMD, możesz użyć „Hydravision”.
(1) Otwórz Centrum sterowania Catalyst (2) W „Pulpicie i wyświetlaczach” kliknij „Więcej ...” (3) W „Hydravision” kliknij „HydraGrid” (4) Zaznacz „Włącz HydraGrid” (5) Kliknij „Edytuj HydraGrid ”i umieść linie siatki tam, gdzie chcesz, np. w połowie wysokości pionowego monitora (6) Zastosuj
Teraz, gdy pracujesz z oknami, możesz kliknąć pasek tytułu prawym przyciskiem myszy i wybrać opcję „Dołącz do siatki”, a następnie przeciągnij go z miejsca na miejsce, a zostanie on przyciągnięty do siatki.
W tej konfiguracji używam monitorów 24x 3 "w trybie pionowym i jest to najszybszy sposób na przyciągnięcie okien do górnej i dolnej połowy każdego monitora.
Sprawdź AquaSnap . Możesz przeciągnąć myszą zgodnie z oczekiwaniami, użyj Ctrl + Mysz, aby zmienić rozmiar dwóch okien sąsiadująco, oprócz wielu innych funkcji.
Możesz także użyć szerokiej gamy skrótów klawiszowych. Ten program zastępuje kilka domyślnych ustawień systemu Windows, z których już jesteś przyzwyczajony, oprócz zmiany Win + Up i Win + Down dla doku na górę / dół.
WindowSpace działa, ale nie jest tak przyjemny i może się zawiesić na chwilę po naciśnięciu przycisku Zastosuj. Dla porównania, bezpłatna / próbna wersja Aquasnap Pro jest bardzo płynnym doświadczeniem.
Istnieje wiele opcji zapewnianych przez system Windows, w tym STOSOWANIE, SIDE BY SIDE i KASKADOWANIE. Odbywa się to poprzez kliknięcie prawym przyciskiem myszy pustego obszaru na pasku zadań (zwykle na dole ekranu) i wybranie. Tak, to nie jest skrót klawiaturowy, ale jest dość blisko.
Nie ufaj mi, weź to prosto z pyska konia, Microsoft tutaj .
Na stronie znajduje się również wiele innych ciekawych ciekawostek - wiele z nich, niektóre z nich mogą być nowe. Mam nadzieję że to pomoże.
Istnieje sposób, aby uzyskać tę funkcjonalność bez użycia narzędzi zewnętrznych, ale AFAIK:
Przepis jest następujący:
Win+Down
aby jedno z okien zajmowało jedną czwartą ekranuWin+Up
aby drugie okno zajęło przeciwległą ćwiartkę ekranuNaprawiono błąd w rozwiązaniu Jasona Clementa. Kiedy okno zatrzaśnie się pionowo, poprzednio nie zajmowałoby ono także szerokości monitora. Po prostu pozostanie na bieżącej szerokości okna, ale przyciągnie do 1/2 monitora w pionie. Dzięki tej poprawce przyciąga do 50% wysokości w pionie w górę lub w dół i 100% w poziomie szerokości monitora.
Również dla tych, którzy mogą nie znać AHK ...
Mam nadzieję, że to pomaga i dziękuję Jasonowi!
;-------------------------------------------------------------------;
; Returns the maximum or minimum value for any number of inputs
; i.e. Max(5,4,7,10) will return 10
;-------------------------------------------------------------------;
Min(params*)
{
r := params[1]
for index, param in params
if (param < r)
r := param
return r
}
Max(params*)
{
r := params[1]
for index, param in params
if (param > r)
r := param
return r
}
;-------------------------------------------------------------------;
; WindowsKey+Ctrl+Up / WindowsKey+Ctrl+Down
; Resizes window to half the screen height and moves it to the top
; or bottom of whichever screen has the largest overlap.
; By default, the window retains its horizontal (x) position and
; width. To change this, uncomment the WinMaximize line.
;-------------------------------------------------------------------;
UpDownSnap(Direction)
{
; WinMaximize, A
WinGetPos, x, y, w, h, a, , ,
SysGet , Count, MonitorCount
refArea := 0
Loop, %count%
{
SysGet, m, MonitorWorkArea, %A_Index%
xo := Max(0, Min(x + w, mRight) - Max(x, mLeft))
yo := Max(0, Min(y + h, mBottom) - Max(y, mTop))
area := xo * yo
if (area > refArea)
{
monTop := mTop
monBottom := mBottom
monLeft := mLeft
monRight := mRight
refArea := area
}
}
; If the refArea is still equal to 0, the window does
; not overlap with any monitors. Wat?
if (refArea > 0)
{
if (direction = 1)
newY := monTop
Else
newY := (monBottom - monTop) / 2 + monTop
WinMove , a, , monLeft, newY, (monRight - monLeft), (monBottom - monTop) / 2
}
}
^#Up::UpDownSnap(1)
^#Down::UpDownSnap(0)
Przydatną opcją jest podzielenie monitorów na wirtualne połówki za pomocą DisplayFusion . Konfigurujesz to, wykonując następujące czynności:
Monitor Configuration
.vertical split
do monitora. (Możesz się tym pobawić i jeszcze bardziej podzielić swoje monitory).Po włączeniu tej opcji powinieneś być w stanie używać klawiszy Windows+ Arrowdo poruszania się po oknie, aby zmaksymalizować ten nowy pionowo podzielony obszar monitora. Zaraz uruchomię moje dwa monitory 1920x1200 w trybie pionowym, gdy tylko moje 30 "wejdzie i konieczne będzie przyciąganie okien w pionie.
Musiałem wielokrotnie dzielić dwa górne i dolne okna przeglądarki Windows w systemie Windows 10 za pomocą konfiguracji z wieloma monitorami z wieloma innymi otwartymi oknami. Mógłby to zrobić ręcznie, ale potrzebował lepszego rozwiązania.
Odkryłem, że rozszerzenie Chrome „Zmiana rozmiaru karty - Podział układów ekranu” bardzo mi to ułatwiło.
Wystarczy otworzyć nowe okno Chrome, kliknąć ikonę rozszerzenia Tab Resize, wybrać opcję 2x1. Miło i łatwo.
Jeśli używasz monitora Dell, możesz zainstalować Dell Display Manager, który ma opcje podziału wyświetlacza na siatkę.
Następnie możesz przeciągnąć okno do komórki, przytrzymując klawisz Shift.