Có thể để snap snap đỉnh / đáy thay vì chỉ trái / phải trong Windows 7?


125

Trong Windows 7, tôi biết bạn có thể làm Windows+ Leftđể đặt một cửa sổ ở nửa bên trái của màn hình. Có một tính năng sẽ làm trên và dưới?


@RockPaperLizard Bạn cũng phải nhớ rằng Windows 7 thực sự cũ và là hệ điều hành duy nhất có tính năng chụp nhanh gốc, cho đến nay. Tôi phải tìm một tập lệnh loại "phần mở rộng" của bên thứ ba để làm điều này trên Mac chẳng hạn. Ngoài ra, Windows 10 có Snap cho mọi hướng, bao gồm cả các góc! Nói cách khác, tôi nghĩ rằng nhóm Windows thực sự cố gắng ở phía UX. UI đôi khi là một bài kiểm tra tính cách, nhưng UX là thứ mà Windows có lịch sử khá giỏi.
Joseph Hansen

@Joseph Tôi thực sự đồng ý rằng MS đã có nhiều thành công trong lĩnh vực UX. Họ thậm chí đã sẵn sàng khám phá lãnh thổ mới, mặc dù không thành công về mặt thương mại, với Microsoft Bob . Thật không may, thành công của họ bị hủy hoại bởi nhiều thất bại, đáng chú ý nhất là Windows 8 . Tôi không biết liệu thất bại của dự án đó là do đội UX của họ hoặc ban quản lý từ chối lắng nghe họ.
RockPaperLizard

Câu trả lời:


73

Không. Các tùy chọn snap duy nhất có sẵn là:

  • chụp nửa trái ( Windows+ left)
  • chụp nửa bên phải ( Windows+ right)
  • chụp toàn bộ chiều cao màn hình ( Windows+ shift+ up)
  • snap tối đa hóa ( Windows+ up)
  • "không chụp" ( Windows+ down)
  • chụp vào màn hình / màn hình tiếp theo ( Windows+ shift+ ( lefthoặc right))

Chỉnh sửa: các kết hợp tuyệt vời khác mà bạn có thể thích:

  • giảm thiểu tất cả ( Windows+ m)
  • thu nhỏ tất cả trừ cửa sổ đang hoạt động ( Windows+ Home)
  • Nhìn trộm nhanh (xem Desktop, tất cả Windows trở nên trong suốt) ( Windows+ space)

Gọn gàng, tôi đã cố gắng tìm ra cách giữ cố định vị trí thẳng đứng nhưng cho phép di chuyển ngang mà không cần sử dụng ảnh chụp màn hình trái / phải và phải điều chỉnh độ rộng cửa sổ, và độ cao toàn màn hình thực hiện đúng những gì tôi muốn.
JAB

4
Ồ, chỉ cần phát hiện ra rằng nhấp đúp vào cạnh trên của thanh tiêu đề (nghĩa là khi mũi tên hai đầu dọc được hiển thị) cũng không chụp chiều cao màn hình.
JAB

7
Trong Windows 10 bây giờ có một tùy chọn khác: Sau khi chụp sang trái hoặc phải, bạn có thể nhấn uphoặc down, ví dụ để chụp sang phía trên bên trái . Không phải những gì OP muốn, nhưng có thể hữu ích cho những người khác.
Andre

không "chụp toàn màn hình rộng?" -_-
Shaya

Đối với người chơi downvoter, đây là câu trả lời đúng cho Windows 7. Windows 10 có các tùy chọn snap mới ...
Joseph Hansen

58

Tôi sử dụng các bước sau để thực hiện điều này:

  1. Windows+ D(để thu nhỏ tất cả các cửa sổ)
  2. sau đó sử dụng chuột để đặt các cửa sổ tôi muốn xếp vào vị trí chung trên mỗi màn hình (đừng bận tâm thay đổi kích thước chúng)
  3. sau đó nhấp chuột phải vào thanh tác vụ và chọn "Hiển thị các cửa sổ được xếp chồng" từ menu ngữ cảnh sau đó khôi phục bất kỳ cửa sổ nào khác mà tôi muốn

Lưu ý: Bạn phải giảm thiểu bất kỳ cửa sổ nào mà bạn không muốn xếp chồng lên nhau. Đây là những gì bước 1 dự định làm.


1
Điều này thực sự hữu ích. Tôi biết điều này kể từ win 98 nhưng tôi chưa bao giờ thực sự sử dụng nó trong win 7, bởi vì trong win XP và các phiên bản trước, bạn có thể chọn các nút trên thanh tác vụ để chọn cửa sổ nào để xếp nhưng nó không hoạt động nữa trong Windows 7 vì vậy khi tôi chọn tùy chọn nó sẽ xếp tất cả các cửa sổ trên màn hình. Blog kỹ thuật: bạn có biết: hiển thị các cửa sổ xếp chồng lên nhau, xếp tầng hoặc cạnh nhau
phuclv

Điều này rất hữu ích, nhưng nó sẽ xếp tất cả các cửa sổ trong tất cả các màn hình.
Leo

Điều này vẫn hoạt động cho Windows 10 là tốt.
snickers10m

@Leo - và trên tất cả các Máy tính để bàn cũng vậy. Thú vị :)
J Bryan Giá

23

Tôi đã viết một đoạn script AutoHotKey nhỏ để chụp các cửa sổ trên và dưới vì tôi cũng thất vọng về điều này. Bạn có thể tải xuống từ trang web của tôi: 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

Nó hoạt động, nhưng cũng mở màn hình bắt đầu trong Windows 8.1. Làm thế nào để khắc phục vấn đề này?
Gabriel Hautclocq

2
Đây chính xác là những gì tôi đã hy vọng tìm thấy. Cảm ơn bạn! Tôi đã nhận thấy lệnh không thay đổi độ rộng của cửa sổ. Bất kỳ cách nào để tự động đi hết chiều rộng toàn màn hình khi chụp lên / xuống?
Alex P. Miller

1
Điều này không hoạt động với tôi trên Windows 10. Tôi có 3 màn hình, trong đó 2 màn hình ở chế độ dọc. Bạn đang nói rõ ràng về 2 lĩnh vực làm việc, không chắc đây có phải là nguyên nhân không. Ngoài ra, bạn nên đề cập đến tổ hợp phím nào bạn cần nhấn trong câu trả lời này cho những người không biết cú pháp AHK
Joakim Söderberg

1
Nó chỉ hoạt động một phần trên Windows 7 của tôi với một màn hình ngang và một màn hình dọc. Hoàn hảo trên màn hình ngang, nhưng trên chiều dọc dường như lấy chiều cao từ màn hình ngang.
hardmooth

21

WindowSpace cung cấp chức năng này. Để làm những gì bạn yêu cầu:

  • Chuyển đến tab "Di chuyển và thay đổi kích thước" trong Settings
  • Đối với "Cạnh trên:", chọn "Di chuyển lên phía trên"
  • Đối với "Cạnh dưới:", chọn "Di chuyển xuống phía dưới"

Ảnh chụp màn hình:

ảnh chụp màn hình


9
Có phải khóa giấy phép $ 25 tại một số điểm?
ruffin

2
Tôi thích AquaSnap (miễn phí hoặc tốn 9 đô la cho nhiều màn hình): youtube.com/watch?v=bOVOEebpiWc Nhưng vì Windows 10 không cần nữa vì các tính năng quan trọng nhất là một phần của HĐH.
mgutt

1
Hiện tại, AquaSnap có giá 18 đô la (nếu bạn sử dụng nhiều màn hình) và Win10 không thực hiện được nhiều thứ, chẳng hạn như chụp và ốp lát trên / dưới. Rất tuyệt.
isherwood

9

Hiện tại tôi không có máy Windows 7 trước mặt, nhưng kể từ Windows 95 (hoặc thậm chí trước đó có thể), đã có tùy chọn xếp các cửa sổ theo chiều ngang. Thu nhỏ mọi thứ trừ hai cửa sổ bạn muốn xem trên cùng và dưới cùng, nhấp chuột phải vào thanh tác vụ và chọn Ngói Windows theo chiều ngang. Nó sẽ kích thước mỗi cửa sổ để chiếm một nửa diện tích màn hình dọc. Điều này không hữu ích để làm với một cửa sổ duy nhất và như một câu trả lời khác đã nêu, không có phím tắt cho nó, nhưng đôi khi tôi thấy nó tiện dụng.

Sửa lỗi: trên Windows 7, đây được gọi là "Hiển thị các cửa sổ xếp chồng lên nhau"


8

Tương tự như phía bắc, tôi cũng đã viết một kịch bản AutoHotKey, mặc dù hơi khác một chút nên tôi nghĩ nó xứng đáng với câu trả lời của riêng mình. Kịch bản này sẽ hoạt động với bất kỳ số lượng màn hình hoặc định hướng màn hình.

Các lệnh đang bị ràng buộc để Windows+ Ctrl+ UpDownthay vì Shiftnhư vậy là không can thiệp vào hiện tại Windows+ Shift+ Up.

Điều này hoạt động tương tự như snap chiều cao toàn màn hình ( Windows+ Shift+ Up) trong đó cửa sổ vẫn giữ vị trí và chiều rộng ngang của nó. Điều này có thể dễ dàng được thay đổi để hoạt động tương tự như chụp nửa trái hoặc nửa phải ( Windows+ Lefthoặc Right) bằng cách bỏ ; WinMaximize, Adòng. Nếu bạn muốn giữ hành vi mặc định, nhưng đôi khi sử dụng hành vi chụp một nửa, chỉ cần tối đa hóa cửa sổ trước khi chụp.

Hoạt động với Windows 7 64 bit và 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)

1
Tôi ước điều này sẽ làm việc. Tôi đang nhận được The following variable name contains an illegal character: "params*". Hiện tại tôi đang sử dụng tập lệnh của @ southben
bit

Cảm ơn kịch bản này. Siêu hữu ích. Tôi thấy rằng nó sẽ không tải cho đến khi tôi loại bỏ khoảng trắng giữa tên hàm UpDownSnap và dấu ngoặc đơn.
Jason Dufair

Có lẽ đó cũng là vấn đề bit ở trên. Thật thú vị, kịch bản của riêng tôi không có không gian; Tôi không chắc làm thế nào nó đạt được điều đó. Tôi đã gỡ bỏ nó, cảm ơn.
Jason Clement

Hoạt động tốt trong Windows 8.1 :-)
Gabriel Hautclocq

Cảm ơn @JasonClement cho giải pháp của bạn. Tôi đã sửa một lỗi trong giải pháp của bạn và đăng lên như một câu trả lời khác.
Zee

7

Chương trình tốt nhất tôi từng sử dụng thực hiện chính xác điều này + hơn thế nữa là WinSplit Revolution: http://winsplit-revolution.com/

Tôi đánh giá cao nó, vì nó cực kỳ đơn giản để sử dụng và thậm chí nó hoạt động tốt với nhiều màn hình.

Video giới thiệu: http://winsplit-revolution.com/sc Greensshots/ideo-demos

Ứng dụng này là phần mềm miễn phí và được phát hành theo Creative Commons Attribution-Non Commercial-No Derivative Works 3.0.

BIÊN TẬP:

Dường như WinSplit không còn khả dụng, trang web đã được Digital Creations AS tiếp quản, có phiên bản riêng của loại phần mềm này và không còn miễn phí


Phần mềm vẫn có sẵn từ softonic và vẫn hoạt động kỳ diệu trên Windows 10 kể từ Cập nhật 1809. en.softonic.com/doad/winsplit-revolution/windows
JoeB

5

đặt các cửa sổ của bạn đúng như bạn muốn -> nhấp chuột phải vào thanh tác vụ -> "hiển thị các cửa sổ được xếp chồng lên nhau" -> lợi nhuận!


4

Như Rain đề xuất ở đây , PowerResizer hoạt động tốt. Không dễ tùy biến - bạn không thể thay đổi các phím tắt, nhưng ít nhất đó là nguồn mở. Như JoeB lưu ý, bạn có thể nhấn những cái này trong khi kéo một cửa sổ: W để di chuyển lên và Z để di chuyển xuống. A là di chuyển sang trái, S di chuyển sang phải. Hoặc chỉ cần kéo cửa sổ ra cạnh. Nhấn 1,2,3 và 4 trong khi kéo sẽ thực hiện một phần tư vào một góc. Tôi hài lòng với nó, hãy thử nó.


Tôi vừa thử WindowSpace; nếu bạn không ngại trả 25 đô la, đó là một giải pháp tốt hơn nhiều.
leetNightshade

1
Có tài liệu! readme.txt trong thư mục cài đặt tập tin chương trình. Chưa kể nó làm chính xác những gì tôi muốn, đó là một nửa snap dọc. 1/4 snaps là một phần thưởng thêm!
đáng sợ

3

Nếu bạn có card đồ họa AMD, bạn có thể sử dụng "Hydravision".

. "và đặt các đường lưới ở nơi bạn muốn, ví dụ: một nửa màn hình dọc (6) Áp dụng

Bây giờ khi bạn đang làm việc với các cửa sổ, bạn có thể nhấp chuột phải vào thanh tiêu đề và chọn "Đính kèm vào lưới", sau đó kéo nó từ nơi này sang nơi khác và nó sẽ chụp vào lưới.

Tôi chạy màn hình 3x1 24 "ở chế độ dọc với thiết lập này và đó là cách nhanh nhất tôi tìm thấy để chụp các cửa sổ ở nửa trên và dưới của mỗi màn hình.


1
Tôi đã phạm sai lầm khi cài đặt Catalyst Control Center để dùng thử Hydravision. Chương trình đó là một con heo và tôi đang tìm giải pháp khác.
dana

2

Kiểm tra AquaSnap . Bạn có thể kéo chuột như mong đợi, sử dụng Ctrl + Chuột để thay đổi kích thước hai cửa sổ lát gạch cùng một lúc, bên cạnh một loạt các tính năng khác.

Xem các tính năng lắp ghép tuyệt vời

Bạn cũng có thể sử dụng nhiều loại phím nóng. Chương trình này ghi đè một vài mặc định Windows mà bạn đã quen sử dụng, bên cạnh việc thay đổi Win + Up và Win + Down cho dock lên trên / dưới.

Ví dụ về phím nóng

WindowSpace hoạt động, nhưng gần như không đẹp và có thể chờ một lúc khi bạn nhấn áp dụng. So sánh, phiên bản dùng thử / miễn phí của Aquasnap Pro là một trải nghiệm rất mượt mà.


1

Có rất nhiều tùy chọn được cung cấp bởi Windows, bao gồm STACKING, SIDE BY SIDE và CASCADING. Chúng được thực hiện bằng cách nhấp chuột phải vào một vùng trống trên thanh tác vụ (thường ở dưới cùng của màn hình) và chọn. Vâng, nó không phải là một bàn phím ngắn, nhưng nó khá gần.

Đừng tin tôi, hãy lấy nó từ miệng ngựa, Microsoft đây .

Ngoài ra trang web có rất nhiều mẩu tin hay khác - nhiều cái mà bạn biết, một số có thể là mới. Hi vọng điêu nay co ich.


1

Có một cách miễn phí của bên thứ ba để đạt được chức năng này, nhưng AFAIK:

  • Nó đòi hỏi một số sử dụng chuột
  • Nó chỉ hoạt động cho hai cửa sổ.

Công thức là:

  1. Chụp các cửa sổ cạnh nhau theo cách thông thường.
  2. Nhấn Win+Downđể làm cho một trong các cửa sổ mất một phần tư màn hình
  3. Chọn cửa sổ khác và nhấn Win+Upđể làm cho cửa sổ khác lấy phần tư đối diện của màn hình
  4. Sử dụng chuột để lấy cạnh của cửa sổ và thay đổi kích thước của nó thành cạnh của màn hình, do đó tối đa hóa chiều rộng của mỗi cửa sổ mà không thay đổi độ cao của chúng.

Mẹo hay, nhưng đó là một tấn công việc để làm cho đúng mỗi lần.
11101101b

1

Đã sửa lỗi trong giải pháp của Jason Clement. Khi cửa sổ bật theo chiều dọc, trước đó nó cũng không chiếm hết chiều rộng của màn hình. Nó sẽ chỉ ở chiều rộng cửa sổ hiện tại, nhưng sẽ chụp đến 1/2 màn hình theo chiều dọc. Với bản sửa lỗi này, nó tăng đến 50% chiều cao lên hoặc xuống theo chiều dọc và 100% chiều rộng của màn hình.

Ngoài ra, đối với những người có thể không biết AHK ...

  1. Tải xuống AutoHotKey
  2. Tạo một tệp văn bản trong notepad. Dán mã vào đó. Lưu nó với phần mở rộng chính xác cho AutoHotKey, ví dụ: "verticalSnap.ahk"
  3. Nhấp chuột phải vào tệp từ Explorer, chọn "Biên dịch tập lệnh"
  4. Trình biên dịch sẽ tạo một tệp "verticalSnap.exe" trong thư mục đó.
  5. Mở run.exe, gõ "shell: startup" và nhấn Enter.
  6. Một cửa sổ Explorer mới sẽ mở ra thư mục Khởi động.
  7. Sao chép / dán tệp .exe vào thư mục Khởi động này.
  8. Trong lần khởi động tiếp theo, tập lệnh này sẽ được chạy. Bạn có thể sử dụng CRTL + WINDOWS + UPARWAY hoặc + DOWNARWAY để chụp vào nửa trên cùng của màn hình. Lưu ý rằng cửa sổ không được tối đa hóa để làm việc này.

Mong rằng sẽ giúp, và cảm ơn 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)

0

Một tùy chọn mà tôi thấy hữu ích là chia nhỏ màn hình của bạn thành một nửa ảo bằng DisplayFusion . Bạn thiết lập điều này bằng cách làm như sau:

  • Nhấp chuột phải vào biểu tượng DisplayFusion nằm trên khu vực thông báo của bạn và đi đến Monitor Configuration.
  • Chọn màn hình mà bạn muốn cấu hình.
  • Thêm một vertical splitvào màn hình. (Bạn có thể chơi xung quanh với điều này và chia đôi màn hình của bạn hơn nữa.)

Khi bật tính năng này, bạn sẽ có thể sử dụng các phím Windows+ Arrowđể điều hướng cửa sổ của mình để tối đa hóa vào khu vực phân chia theo chiều dọc mới của màn hình. Tôi sắp chạy hai màn hình 1920x1200 của mình ở chế độ dọc khi 30 "của tôi xuất hiện và các cửa sổ chụp theo chiều dọc sẽ là một điều cần thiết.


0

Tôi cần phải liên tục phân chia hai Trình duyệt Windows trên và dưới trong Windows 10 với thiết lập nhiều màn hình với rất nhiều cửa sổ khác đã mở. Có thể làm bằng tay nhưng muốn một giải pháp tốt hơn.

Tôi đã tìm thấy tiện ích mở rộng "Thay đổi kích thước tab - Bố cục màn hình chia nhỏ" của Chrome giúp tôi cực kỳ dễ dàng.

Chỉ cần mở Cửa sổ Chrome mới, nhấp vào biểu tượng Mở rộng kích thước tab, chọn tùy chọn 2x1. Đẹp và dễ dàng bây giờ.


1
Có vẻ như người hỏi câu hỏi muốn có giải pháp phù hợp với tất cả các chương trình, không chỉ Chrome. Bạn có cái gì đó không?
Ben N

0

Nếu bạn sử dụng màn hình Dell, bạn có thể cài đặt Trình quản lý hiển thị Dell, có các tùy chọn để chia màn hình thành một lưới.

Sau đó, bạn có thể kéo cửa sổ vào một ô trong khi giữ phím Shift.

Khi sử dụng trang web của chúng tôi, bạn xác nhận rằng bạn đã đọc và hiểu Chính sách cookieChính sách bảo mật của chúng tôi.
Licensed under cc by-sa 3.0 with attribution required.