Ist es in Windows 7 möglich, oben / unten anstatt nur links / rechts zu "fangen"?

125

Unter Windows 7 können Sie mit Windows+ Leftein Fenster in die linke Bildschirmhälfte einfügen. Gibt es eine Funktion, die oben und unten funktioniert?

Abe Miessler
quelle
@RockPaperLizard Sie müssen sich auch daran erinnern, dass Windows 7 wirklich alt ist und das einzige Betriebssystem ist, das bisher über eine native Snap-Funktion verfügt. Ich muss ein "Erweiterungs" -Skript eines Drittanbieters finden, um dies beispielsweise auf einem Mac zu tun. Windows 10 bietet außerdem Snap für alle Richtungen, einschließlich Ecken! Mit anderen Worten, ich denke, das Windows-Team versucht es wirklich auf der UX-Seite. UI ist manchmal ein Persönlichkeitstest, aber UX ist etwas, in dem Windows historisch gesehen ziemlich gut ist.
Joseph Hansen
@ Joseph Ich stimme tatsächlich zu, dass MS viele Erfolge in der UX-Arena hatte. Sie waren sogar bereit, mit Microsoft Bob Neuland zu erkunden, obwohl dies wirtschaftlich nicht erfolgreich war . Leider werden ihre Erfolge durch viele erbärmliche Fehler beeinträchtigt, insbesondere durch Windows 8 . Ich weiß nicht, ob der Misserfolg dieses Projekts die Weigerung des UX-Teams oder des Managements war, ihnen zuzuhören.
RockPaperLizard

Antworten:

73

Nein. Die einzigen verfügbaren Fangoptionen sind:

  • Linke Schnapphälfte ( Windows+ left)
  • rechte Hälfte einrasten ( Windows+ right)
  • Vollbild-Höheneinstellung ( Windows+ shift+ up)
  • maximierter Fang ( Windows+ up)
  • "Un-Snap" ( Windows+ down)
  • Zum nächsten Monitor / Display springen ( Windows+ shift+ ( leftoder right))

Bearbeiten: andere tolle Kombinationen, die Ihnen gefallen könnten:

  • Alles minimieren ( Windows+ m)
  • minimiere alle bis auf das aktive Fenster ( Windows+ Home)
  • Aero Peek (Desktop anzeigen, alle Fenster werden transparent) ( Windows+ space)
Joseph Hansen
quelle
Ich habe versucht herauszufinden, wie man die vertikale Position festhält, aber horizontale Bewegungen zulässt, ohne den linken / rechten Bildschirmfang zu verwenden und die Fensterbreite neu einstellen zu müssen, und der Vollbild-Höhenfang macht genau das, was ich wollte.
JAB
4
Ich habe gerade herausgefunden, dass ein Doppelklick auf den oberen Rand der Titelleiste (dh wenn der vertikale Doppelpfeil angezeigt wird) auch die Bildschirmhöhe einrastet.
JAB
7
In Windows 10 gibt es jetzt eine weitere Option: Nachdem Sie nach links oder rechts gefangen haben, können Sie upoder drücken down, um z. B. nach links oben zu fangen . Nicht das, was die OP wollte, aber vielleicht hilfreich für andere.
Andre
nein "Vollbild-Schnappschuss?" -_-
Shayan
Für den Downvoter ist dies die richtige Antwort für Windows 7. Windows 10 hat neue Fangoptionen ...
Joseph Hansen
58

Ich benutze die folgenden Schritte, um dies zu erreichen:

  1. Windows+ D(um alle Fenster zu minimieren)
  2. Platziere dann mit der Maus die Fenster, die ich stapeln möchte, in der allgemeinen Position auf jedem Monitor (ohne die Größe zu ändern).
  3. Klicken Sie dann mit der rechten Maustaste auf die Taskleiste und wählen Sie "Fenster gestapelt anzeigen" aus dem Kontextmenü und stellen Sie alle anderen gewünschten Fenster wieder her

Hinweis: Sie müssen alle Fenster minimieren, die nicht gestapelt werden sollen. Dies ist, was Schritt 1 tun soll.

Nathaniel
quelle
1
Das ist wirklich nützlich. Ich kenne das seit Win 98, aber ich habe es in Win 7 noch nie benutzt, weil Sie in Win XP und früheren Versionen Taskleisten-Schaltflächen auswählen können, welche Fenster gestapelt werden sollen, aber das funktioniert in Windows 7 nicht mehr, wenn ich es auswähle Die Option, dass alle Fenster auf dem Bildschirm gestapelt werden. Blog Technet: Wussten Sie schon: Zeigen Sie Fenster gestapelt, kaskadiert oder nebeneinander
Phuclv
Dies ist nützlich, aber es werden alle Fenster in allen Monitoren gestapelt.
Leo
Dies funktioniert auch weiterhin für Windows 10.
snickers10m
@Leo - und auf allen Desktops. Interessant :)
J Bryan Price
23

Ich habe ein kleines AutoHotKey-Skript geschrieben, um die Fenster oben und unten auszurasten, weil ich auch darüber frustriert war. Sie können es von meiner Website herunterladen: 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
Northben
quelle
Es funktioniert, öffnet aber auch den Startbildschirm in Windows 8.1. Wie kann dieses Problem behoben werden?
Gabriel Hautclocq
2
Genau das wollte ich finden. Danke! Ich habe bemerkt, dass der Befehl die Breite des Fensters nicht ändert. Gibt es eine Möglichkeit, die Vollbildbreite beim Hoch- / Runterrasten automatisch zu ändern?
Alex P. Miller
1
Dies funktioniert unter Windows 10 nicht. Ich habe 3 Monitore, von denen sich 2 im vertikalen Modus befinden. Sie sprechen explizit von 2 Arbeitsbereichen, nicht sicher, ob dies die Ursache ist. Außerdem sollten Sie erwähnen, welche Tastenkombination Sie in dieser Antwort für Personen drücken sollen, die die AHK-Syntax nicht kennen
Joakim Söderberg,
1
Es funktioniert nur teilweise auf meinem Windows 7 mit einem horizontalen und einem vertikalen Monitor. Perfekt auf dem horizontalen Monitor, aber auf dem vertikalen scheint es die Höhe von der horizontalen zu nehmen.
Hardmooth
21

WindowSpace bietet diese Funktionalität. Um das zu tun, wonach Sie fragen:

  • Gehen Sie zur Registerkarte "Verschieben und Ändern der Größe" in Settings
  • Wählen Sie für "Oberkante:" die Option "Nach oben verschieben".
  • Wählen Sie für "Unterkante:" die Option "Nach unten verschieben".

Bildschirmfoto:

Bildschirmfoto

Russell Davis
quelle
9
Wird der 25-Dollar-Lizenzschlüssel irgendwann benötigt?
Ruffin
2
Ich bevorzuge AquaSnap (es ist kostenlos oder kostet 9 Dollar für mehrere Monitore): youtube.com/watch?v=bOVOEebpiWc Aber seit Windows 10 wird es nicht mehr benötigt, da die wichtigsten Funktionen Teil des Betriebssystems sind.
mgutt
1
AquaSnap kostet jetzt 18 US-Dollar (wenn Sie mehrere Monitore verwenden) und es erledigt viele Dinge, die Win10 nicht tut, wie z. Sehr cool.
Isherwood
9

Ich habe derzeit keine Windows 7-Maschine vor mir, aber seit Windows 95 (oder sogar früher) besteht die Möglichkeit, Fenster horizontal zu kacheln. Minimieren Sie alles außer zwei Fenstern, die Sie oben und unten anzeigen möchten, klicken Sie mit der rechten Maustaste auf die Taskleiste und wählen Sie Fenster horizontal kacheln. Jedes Fenster wird so bemessen, dass es die Hälfte des vertikalen Bildschirmbereichs einnimmt. Dies ist nicht sinnvoll, um ein einzelnes Fenster zu bearbeiten, und wie in einer anderen Antwort angegeben, gibt es keine Tastenkombination dafür, aber ich finde es manchmal praktisch.

Korrektur: Unter Windows 7 heißt dies "Fenster gestapelt anzeigen".

rmart
quelle
8

Ähnlich wie Northben habe ich auch ein AutoHotKey-Skript geschrieben, wenn auch etwas anders, so dass ich der Meinung war, dass es eine eigene Antwort verdient. Dieses Skript sollte mit einer beliebigen Anzahl von Monitoren oder Monitorausrichtungen funktionieren.

Die Befehle sind verpflichtet, Windows+ Ctrl+ Upund Downstatt , Shiftum nicht mit dem bestehenden einzumischen Windows+ Shift+ Up.

Dies funktioniert ähnlich wie das Einrasten der Vollbildhöhe ( Windows+ Shift+ Up), da das Fenster seine horizontale Position und Breite beibehält. Dies kann leicht geändert werden, um ähnlich wie beim Einrasten der linken oder rechten Hälfte ( Windows+ Leftoder Right) zu arbeiten, indem die ; WinMaximize, AZeile aus dem Kommentar entfernt wird. Wenn Sie das Standardverhalten beibehalten möchten, aber manchmal das Verhalten mit halbem Fang verwenden, maximieren Sie einfach das Fenster vor dem Fang.

Funktioniert mit Windows 7 64-Bit und 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)
Jason Clement
quelle
1
Ich wünschte, das hätte funktioniert. Ich bekomme The following variable name contains an illegal character: "params*". Im Moment benutze ich @ northbens Skript
Bits
Danke für dieses Skript. Super nützlich. Ich stellte fest, dass es nicht geladen werden konnte, bis ich das Leerzeichen zwischen dem Namen der UpDownSnap-Funktion und der Klammer entfernt hatte.
Jason Dufair
Vielleicht war das auch Bits Problem oben. Interessanterweise hat mein eigenes Skript nicht den Raum; Ich bin mir nicht sicher, wie es dahin gekommen ist. Ich habe es entfernt, danke.
Jason Clement
Funktioniert gut in Windows 8.1 :-)
Gabriel Hautclocq
Danke @JasonClement für deine Lösung. Ich habe einen Fehler in Ihrer Lösung behoben und als weitere Antwort gepostet.
Zee
7

Das beste Programm, mit dem ich jemals genau dies und mehr erreicht habe, ist WinSplit Revolution: http://winsplit-revolution.com/

Ich kann es nur empfehlen, da es extrem einfach zu bedienen ist und sogar mit mehreren Monitoren gut funktioniert.

Demovideo: http://winsplit-revolution.com/screenshots/videos-demos

Diese Anwendung ist Freeware und unter Creative Commons Namensnennung-Keine kommerzielle Nutzung-Keine Bearbeitung 3.0 veröffentlicht.

BEARBEITEN:

Anscheinend ist WinSplit nicht mehr verfügbar, die Website wurde von Digital Creations AS übernommen, das eine eigene Version dieser Art von Software hat, und ist nicht mehr kostenlos

Marcin
quelle
Die Software ist weiterhin von softonic erhältlich und funktioniert unter Windows 10 ab Update 1809 immer noch
hervorragend
5

platzieren Sie Ihre Fenster so, wie Sie möchten -> Rechtsklick auf die Taskleiste -> "Fenster gestapelt anzeigen" -> Profit!

Clevboy
quelle
4

Wie Rain hier vorgeschlagen hat , funktioniert PowerResizer gut. Nicht sehr anpassbar - Sie können Tastaturkürzel nicht ändern, aber es ist zumindest Open Source. Wie JoeB bemerkt, können Sie diese Tasten drücken, während Sie ein Fenster ziehen: W, um sich nach oben zu bewegen, und Z, um sich nach unten zu bewegen. A ist nach links zu bewegen, S nach rechts zu bewegen. Oder ziehen Sie das Fenster einfach an den Rand. Wenn Sie beim Ziehen die Tasten 1,2,3 und 4 drücken, wird ein Viertel an einer Ecke ausgerichtet. Ich bin zufrieden damit, probiere es aus.

leetNightshade
quelle
Ich habe gerade WindowSpace ausprobiert. Wenn es Ihnen nichts ausmacht, 25 US-Dollar zu zahlen, ist dies eine viel bessere Lösung.
LeetNightshade
1
Es gibt Dokumentation! readme.txt im Installationsordner der Programmdateien. Ganz zu schweigen davon, dass es genau das macht, was ich wollte, was vertikal halb so schnell war. 1/4 Snaps sind ein zusätzlicher Bonus!
Scaryman
3

Wenn Sie eine AMD-Grafikkarte besitzen, können Sie "Hydravision" verwenden.

(1) Öffnen Sie das Catalyst Control Center. (2) Klicken Sie unter "Desktop and Displays" auf "More ...". (3) Klicken Sie unter "Hydravision" auf "HydraGrid". (4) Aktivieren Sie "Enable HydraGrid". (5) Klicken Sie auf "Edit HydraGrid" "und platzieren Sie die Rasterlinien an der gewünschten Stelle, z. B. auf halber Höhe eines Hochformatmonitors (6)

Wenn Sie jetzt mit Fenstern arbeiten, können Sie mit der rechten Maustaste auf die Titelleiste klicken und "An Raster anhängen" auswählen. Ziehen Sie sie dann von Ort zu Ort, und sie wird am Raster ausgerichtet.

Ich verwende mit diesem Setup 3x1 24 "-Monitore im Hochformat, und es ist die schnellste Methode, die ich gefunden habe, um Fenster in der oberen und unteren Hälfte jedes Monitors einrasten zu lassen.

Matt
quelle
1
Ich habe den Fehler gemacht, Catalyst Control Center zu installieren, um Hydravision auszuprobieren. Dieses Programm ist ein Schwein und ich suche nach einer anderen Lösung.
Dana
2

Schauen Sie sich AquaSnap an . Sie können wie erwartet mit der Maus ziehen und mit Strg + Maus die Größe von zwei nebeneinander angeordneten Fenstern gleichzeitig ändern.

Sehen Sie sich fantastische Docking-Funktionen an

Sie können auch eine Vielzahl von Hotkeys verwenden. Dieses Programm überschreibt einige Windows-Standardeinstellungen, mit denen Sie bereits vertraut sind, und ändert außerdem Win + Up und Win + Down für das Dock nach oben / unten.

Hotkey-Beispiele

WindowSpace funktioniert, ist aber bei weitem nicht so gut und kann beim Klicken auf Übernehmen für eine Weile auflegen. Vergleichsweise ist die kostenlose Testversion von Aquasnap Pro eine sehr flüssige Erfahrung.

leetNightshade
quelle
1

Windows bietet zahlreiche Optionen, darunter STAPELN, SEITLICH SEITLICH und KASKADIEREN. Klicken Sie dazu mit der rechten Maustaste auf einen leeren Bereich in der Taskleiste (normalerweise am unteren Bildschirmrand) und wählen Sie. Ja, es ist kein Tastaturkürzel, aber es ist ziemlich nah.

Vertrau mir nicht, hol es direkt aus dem Maul des Pferdes, Microsoft hier .

Auch die Website hat viele andere nette Leckerbissen - viele, die Sie kennen, einige könnten neu sein. Hoffe das hilft.

Scott Biggs
quelle
1

Es gibt einen unabhängigen Weg, um diese Funktionalität zu erreichen, aber AFAIK:

  • Es erfordert etwas Mausgebrauch
  • Es funktioniert nur für zwei Fenster.

Das Rezept lautet:

  1. Klappen Sie die Fenster wie gewohnt nebeneinander.
  2. Drücken Sie Win+Down, damit eines der Fenster ein Viertel des Bildschirms einnimmt
  3. Wählen Sie das andere Fenster aus und drücken Sie Win+Up, damit das andere Fenster das gegenüberliegende Viertel des Bildschirms einnimmt
  4. Fassen Sie den Fensterrand mit der Maus an und passen Sie ihn an den Bildschirmrand an, um die Breite der einzelnen Fenster zu maximieren, ohne ihre Höhe zu ändern.
Löwe
quelle
Netter Tipp, aber es ist eine Menge Arbeit, es jedes Mal richtig zu machen.
11101101b
1

Ein Fehler in Jason Clements Lösung wurde behoben. Wenn das Fenster vertikal einrastet, nimmt es zuvor nicht die Breite des Monitors ein. Es würde nur bei der aktuellen Fensterbreite bleiben, aber vertikal auf 1/2 Monitor einrasten. Mit diesem Fix wird die vertikale Höhe auf 50% nach oben oder unten und die horizontale Breite des Monitors auf 100% eingestellt.

Auch für diejenigen, die AHK nicht kennen ...

  1. Laden Sie AutoHotKey herunter
  2. Erstellen Sie eine Textdatei im Editor. Fügen Sie den Code ein. Speichern Sie es mit der richtigen Erweiterung für AutoHotKey, zB "VerticalSnap.ahk"
  3. Klicken Sie im Explorer mit der rechten Maustaste auf die Datei und wählen Sie "Skript kompilieren".
  4. Die Kompilierung sollte eine "VerticalSnap.exe" -Datei in diesem Verzeichnis erstellen.
  5. Öffnen Sie run.exe, geben Sie "shell: startup" ein und drücken Sie die Eingabetaste.
  6. Ein neues Explorer-Fenster sollte sich zum Startordner öffnen.
  7. Kopieren Sie die EXE-Datei, und fügen Sie sie in diesen Startordner ein.
  8. Beim nächsten Start sollte dieses Skript ausgeführt werden. Sie können STRG + WINDOWS + UPARROW oder + DOWNARROW verwenden, um am oberen Rand der unteren Hälfte Ihres Monitors zu rasten. Beachten Sie, dass das Fenster nicht maximiert werden darf, damit dies funktioniert.

Hoffe das hilft und danke Jason!

;-------------------------------------------------------------------;
; 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)
Zee
quelle
0

Als nützliche Option habe ich festgestellt, dass Sie Ihre Monitore mit DisplayFusion in virtuelle Hälften unterteilen können . Sie richten dies folgendermaßen ein:

  • Klicken Sie mit der rechten Maustaste auf das DisplayFusion-Symbol in Ihrem Infobereich und gehen Sie zu Monitor Configuration.
  • Wählen Sie den Monitor aus, den Sie konfigurieren möchten.
  • Fügen Sie vertical splitdem Monitor ein hinzu. (Sie könnten damit herumspielen und Ihre Monitore noch mehr aufteilen.)

Wenn diese Option aktiviert ist, sollten Sie in der Lage sein, mit den Windows+ Arrow-Tasten durch Ihr Fenster zu navigieren, um den neuen vertikal geteilten Bereich Ihres Monitors zu maximieren. Ich bin im Begriff, meine beiden 1920x1200-Monitore im Hochformat zu betreiben, sobald meine 30-Zoll-Monitore eingegangen sind und vertikal einrastende Fenster erforderlich sind.

Jmac
quelle
0

Ich musste die beiden Browser-Fenster in Windows 10 wiederholt oben und unten aufteilen, und zwar mit einem Multi-Monitor-Setup, bei dem bereits viele andere Fenster geöffnet waren. Konnte es manuell machen, wollte aber eine bessere Lösung.

Ich fand, dass die Chrome-Erweiterung "Tab Resize - Split Screen Layouts" dies für mich sehr einfach machte.

Öffnen Sie einfach ein neues Chrome-Fenster, klicken Sie auf das Symbol für die Erweiterung "Größe ändern" und wählen Sie die Option "2x1". Schön und einfach jetzt.

Jeff
quelle
1
Offenbar wollte der Fragesteller eine Lösung, die für alle Programme und nicht nur für Chrome funktioniert. Hast du etwas, das das macht?
Ben N
0

Wenn Sie einen Dell-Monitor verwenden, können Sie den Dell Display Manager installieren, der Optionen zum Aufteilen der Anzeige in ein Raster enthält.

Dann können Sie das Fenster in eine Zelle ziehen, während Sie die Umschalttaste gedrückt halten.

Michael Zheng
quelle