Wenn Sie ein Fenster vertikal ausrichten, werden beide Monitore erweitert

402
Philip

Ich habe zwei 1920 x 1080-Monitore, die übereinander angeordnet sind.

Wenn Sie ein Fenster vertikal ausrichten, werden beide Monitore erweitert

Wenn ich ein Fenster, das sich im unteren Monitor befindet, am unteren Rand des Monitors einrasten lässt, wird es erweitert, sodass das Fenster den ganzen Weg vom unteren Rand des unteren Monitors bis zum oberen Rand des oberen Monitors nimmt (rot dargestellt). Ich würde erwarten, dass sich das Fenster nur zwischen den oberen und unteren Rändern des unteren Monitors erstreckt (grün dargestellt).

Wenn Sie ein Fenster vertikal ausrichten, werden beide Monitore erweitert

Gibt es eine Möglichkeit, dieses Verhalten zu "beheben"?

Ich meine damit, das Fenster nach unten zu schnappen (Screenshot ist in Win7 mit nur einem Monitor, obwohl ich nach Win8.1 frage): http://i.imgur.com/cpMUGz3.png

Außerdem Win-Shift-Upführt die gleiche Sache wie Schnappen.

4
Haben Sie in der Charms-Leiste zu> Geräte> Projekt> Erweitern gewechselt? Oder haben Sie eine andere Option gewählt? uSeRnAmEhAhAhAhAhA vor 10 Jahren 0
@ user-12506 Ich habe mit der rechten Maustaste auf meinen Desktop geklickt und die Option "Bildschirmauflösung" verwendet, um meine Monitore anzuordnen. Ich werde die Frage bearbeiten, um einen Screenshot anzuzeigen. Philip vor 10 Jahren 0

2 Antworten auf die Frage

3
xmo

Nicht sicher, ob dies auf Systemebene möglich ist, aber unten ist ein Arbeitsskript, das AutoHotKey verwendet, um dies zu erreichen. Drücken Sie zum Aktivieren die Umschalttaste + Win + Up. Natürlich können Sie andere Hotkeys zuweisen.

Der Code wurde von Jeff Axelrod in der SO-Antwort stark modifiziert. Wie kann ich ein Fenster über mehrere Monitore hinweg maximieren? .

+#Up:: WinGetActiveTitle, Title WinRestore, %Title% ActiveMonitor := GetCurrentMonitor() SysGet, MaxArea, MonitorWorkArea, %ActiveMonitor% WinMove, %Title%,, , MaxAreaTop,, MaxAreaBottom - MaxAreaTop return  GetCurrentMonitor() { SysGet, numberOfMonitors, MonitorCount WinGetPos, winX, winY, winWidth, winHeight, A winMidX := winX + winWidth / 2 winMidY := winY + winHeight / 2 Loop %numberOfMonitors% { SysGet, monArea, Monitor, %A_Index% if (winMidX > monAreaLeft && winMidX < monAreaRight && winMidY < monAreaBottom && winMidY > monAreaTop) { return A_Index } } SysGet, primaryMonitor, MonitorPrimary return "No Monitor Found" } 
0
codecats

Vorausgesetzt, Desktop, nicht moderner UI (Metro) -Modus. Möchten Sie "Ausrichten" deaktivieren oder "Nur ausrichten" nur einen Bildschirm ausfüllen. Ziehen Sie es an den oberen Rand des unteren Bildschirms anstatt nach unten / unten, damit es nach unten schnappt.

Wenn Sie das gesamte Fenster an den oberen Rand des Bildschirms ziehen, wird der obere Monitor angezeigt. Dies ist für den unteren Monitor nicht möglich. Die Größenänderung des Fensters (gemäß meinem Screenshot) nach oben hat dasselbe Verhalten wie die Größenänderung nach unten. Die Höhe wird so eingestellt, dass sie sich über beide Monitore erstreckt. Philip vor 9 Jahren 0
Versuchen Sie es mit der Windows-Taste + Bild auf (oder Bild ab). codecats vor 9 Jahren 0
Welche Grafikkarte (n) verwenden Sie auch? Überprüfen Sie die Treiberversionen und prüfen Sie, ob Probleme vorliegen. codecats vor 9 Jahren 0