2011-05-18 17:10:38 +0000 2011-05-18 17:10:38 +0000
132
132

Possível "estalar" topo/bottom em vez de apenas esquerda/direita no Windows 7?

No Windows 7, sei que se pode fazer Windows + Esquerda para colocar uma janela na metade esquerda do ecrã. Existe alguma funcionalidade que faça o topo e a base?

Respostas (19)

78
78
78
2011-05-18 17:14:29 +0000

Não. As únicas opções de snap disponíveis são:

  • meio instantâneo esquerdo (Windows + esquerda)
  • meio instantâneo direito (Windows + direita)
  • ecrã inteiro em altura (Windows + shift + para cima)
  • máximo instantâneo (Windows + para cima)
  • “un-snap” (Windows + para baixo)
  • instantâneo para o próximo monitor / ecrã (Windows + shift + (esquerda ou direita))

& Editar: outras combinações fantásticas que poderá gostar:

  • minimizar tudo (Windows + m)
  • minimizar tudo menos janela activa (Windows + Home)
  • Aero peek (ver Ambiente de trabalho, todas as janelas tornam-se transparentes) (Windows + espaço)
60
60
60
2012-06-21 18:28:51 +0000

Utilizo os seguintes passos para o conseguir:

  1. janelas + D (para minimizar todas as janelas)
  2. depois use o meu rato para colocar as janelas que quero empilhar na colocação geral em cada monitor (não se incomode a redimensioná-las)
  3. depois clique com o botão direito do rato na barra de tarefas e seleccione “Mostrar janelas empilhadas” no menu de contexto e depois restaure quaisquer outras janelas que quero

Nota: Deve minimizar quaisquer janelas que não queira empilhar. É isto que o passo 1 se destina a fazer.

22
22
22
2012-05-15 03:58:29 +0000

Escrevi um pequeno guião AutoHotKey para partir as janelas de cima e de baixo porque também fiquei frustrado com isto. Pode descarregá-lo a partir do meu website: 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
21
21
21
2011-05-19 09:20:55 +0000

(http://www.ntwind.com/software/windowspace.html) fornece esta funcionalidade. Para fazer o que lhe é pedido:

& - Vá para o separador “Moving and Resizing” em Settings - Para “Top edge:”, escolha “Move to the top side” - Para “Bottom edge:”, escolha “Move to the bottom side”

Screenshot:

9
9
9
2014-03-21 21:32:34 +0000

À semelhança de Northben, também escrevi um guião AutoHotKey, embora um pouco diferente, pelo que achei que merecia a sua própria resposta. Este guião deve funcionar com qualquer número de monitores ou orientações de monitores.

Os comandos estão ligados ao Windows + Ctrl + Up e Down em vez de Shift, de modo a não interferir com o Windows + Shift + Up existente.

Isto funciona de forma semelhante ao ecrã completo em altura (Windows + Ctrl + Shift + Up) na medida em que a janela mantém a sua posição horizontal e largura. Isto pode ser facilmente alterado para funcionar de forma semelhante ao snap da metade esquerda ou da metade direita (Windows + Esquerda ou Direita), descomentando a linha ; WinMaximize, A. Se quiser manter o comportamento padrão, mas por vezes usar o comportamento de meio estalido, basta maximizar a janela antes de estalar.

funciona com Windows 7 64-bit e 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)
9
9
9
2011-05-18 17:24:45 +0000

Não tenho actualmente uma máquina com janelas 7 à minha frente, mas desde o Windows 95 (ou mesmo antes, possivelmente), tem havido a opção de colocar janelas de azulejo na horizontal. Minimize tudo menos duas janelas que queira ver em cima e em baixo, clique com o botão direito do rato na barra de tarefas, e seleccione Janelas de Azulejo na horizontal. Dimensionará cada janela para ocupar metade da área vertical do ecrã. Isto não é útil para fazer a uma única janela, e, como outra resposta afirma, não há atalho de teclado para ela, mas por vezes acho-a útil.

Correcção: no Windows 7, isto chama-se “Mostrar janelas empilhadas”.

7
7
7
2012-06-21 19:09:15 +0000

O melhor programa que já utilizei e que realiza exactamente este + é o WinSplit Revolution: http://winsplit-revolution.com/

Recomendo-o vivamente, pois é extremamente simples de utilizar e funciona mesmo bem com múltiplos monitores.

Vídeo de demonstração: http://winsplit-revolution.com/screenshots/videos-demos

Esta aplicação é freeware e lançada sob Creative Commons Attribution-Non Commercial-No Derivative Works 3.0.

EDIT:

Parece que o WinSplit já não está disponível, o website foi adquirido pela Digital Creations AS, que tem a sua própria versão deste tipo de software, e é já não é gratuito

5
5
5
2014-06-25 14:02:11 +0000

coloque as suas janelas tal como deseja –> clique com o botão direito do rato na barra de tarefas –> “mostrar janelas empilhadas” –> lucro!

4
4
4
2014-06-19 20:37:55 +0000

Como a Rain sugeriu aqui , PowerResizer funciona bem. Não é muito personalizável - não se pode mudar os atalhos do teclado, mas é pelo menos de código aberto. Como o JoeB observa, pode pressioná-los enquanto arrasta uma janela: W para subir, e Z para descer. A é para mover para a esquerda, S para mover para a direita. Ou simplesmente arrastar a janela para a borda. Se premir 1,2,3, e 4 enquanto se arrasta um quarto de volta para um canto. Estou contente com isso, experimenta-o.

3
3
3
2017-12-21 20:37:21 +0000

Corrigido um bug na solução de Jason Clement. Quando a janela se partia verticalmente, anteriormente também não ocupava a largura do monitor. Ficava apenas na largura actual da janela, mas passava para ½ monitor na vertical. Com esta correcção, ela encaixa até 50% de altura vertical para cima ou para baixo e 100% de largura horizontal do monitor.

Também, para aqueles que podem não conhecer AHK…

  1. Descarregar AutoHotKey
  2. Criar um ficheiro de texto no bloco de notas. Colar o código no mesmo. Guarde-o com a extensão correcta para AutoHotKey, por exemplo “VerticalSnap.ahk”
  3. Clique com o botão direito no ficheiro do Explorer, escolha “Compile script”
  4. A compilação deve criar um ficheiro “VerticalSnap.exe” nesse directório.
  5. Abra run.exe, escreva “shell:startup” e carregue em Enter.
  6. Deverá abrir-se uma nova janela do Explorer para a pasta Startup.
  7. Copiar/colar o ficheiro .exe para esta pasta de Arranque.
  8. No próximo arranque, este script deverá estar a correr. Pode usar CRTL+WINDOWS+UPARROW ou +DOWNARROW para encaixar no topo da metade inferior do seu monitor. Note que a janela não deve ser maximizada para que isto funcione.

Esperança que ajuda, e obrigado 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)
3
3
3
2012-05-31 03:40:46 +0000

Se tiver uma placa gráfica AMD, pode usar “Hydravision”.

(1) Abra o Centro de Controlo de Catalizadores (2) Em “Ambiente de trabalho e ecrãs” clique em “Mais…”. (3) Em “Hydravision” clique em “HydraGrid” (4) Marque “Enable HydraGrid” (5) Clique em “Edit HydraGrid” e coloque linhas de grelha onde desejar, por exemplo, a meio caminho de um monitor de retrato (6) Aplique

Agora quando estiver a trabalhar com janelas, pode clicar com o botão direito na barra de título e seleccionar “Attach to Grid”, depois arraste-a de um lugar para outro e ela irá encaixar na grelha.

Corro monitores 3x1 24" em modo retrato com esta configuração e é a forma mais rápida que encontrei para encaixar janelas no topo e na metade inferior de cada monitor.

2
2
2
2017-03-28 21:48:49 +0000

Confira AquaSnap . Pode arrastar o rato como esperado, usar Ctrl+Mouse para redimensionar duas janelas em mosaico ao mesmo tempo, para além de uma série de outras características.

Também pode usar uma grande variedade de hotkeys. Este programa anula alguns padrões de Windows que já está habituado a utilizar, além de mudar Win+Up e Win+Down para a doca para cima/bottom.

WindowSpace funciona, mas não é tão agradável, e pode desligar durante algum tempo quando se acerta na aplicação. Comparavelmente, a versão gratuita/de teste de Aquasnap Pro é uma experiência muito suave.

1
1
1
2013-01-11 23:17:50 +0000

Existem muitas opções fornecidas pelo Windows, incluindo STACKING, SIDE BY SIDE, e CASCADING. Estas são feitas clicando com o botão direito do rato numa área vazia na barra de tarefas (geralmente na parte inferior do ecrã) e seleccionando. Sim, não é um atalho de teclado, mas está bastante perto.

Não confie em mim, tire-o directamente da boca do cavalo, Microsoft aqui .

Também o website tem muitas outras boas notícias - muitas das quais você sabe, algumas podem ser novas. Espero que isto ajude.

1
1
1
2016-12-16 12:51:38 +0000

Existe uma forma livre de terceiros para conseguir esta funcionalidade, mas AFAIK:

  • Requer algum uso do rato
  • Funciona apenas para duas janelas.

  • A receita é:

  1. Estalar as janelas lado a lado da forma habitual.
  2. Pressionar Win+Down& para fazer uma das janelas tirar um quarto do ecrã
  3. Seleccionar a outra janela e premir Win+Up para fazer com que a outra janela tome o quarto oposto do ecrã
  4. Use o rato para agarrar a borda da janela e redimensioná-la para a borda do ecrã, maximizando assim a largura de cada janela sem alterar as suas alturas.
0
0
0
2020-02-26 09:44:15 +0000

Isto é específico da marca, e significa utilizar o rato em vez do teclado, mas se utilizar monitores Dell pode utilizar Dell Display Manager (gratuito).

Permite-lhe dividir cada monitor como quiser (2x1, 2x2, 4x2, o que quer que seja), e depois encaixar as janelas em qualquer segmento. Já o utilizo há alguns anos, e é realmente bom.

0
0
0
2020-01-08 11:10:08 +0000

O Windowpad é super leve e lida com isto de forma bastante agradável.

É um exe autónomo, executa-se depois de arrancar, depois a tecla windows + numpad maximiza os vários trimestres e metades. Ou se não tiver um numpad, então capslock + a área WASD. https://autohotkey.com/board/topic/19990-windowpad-window-moving-tool/

0
0
0
2018-07-16 06:57:25 +0000

Se utilizar um monitor Dell, pode instalar o Dell Display Manager, que tem opções para dividir o monitor numa grelha.

Depois pode arrastar a janela para uma célula enquanto mantém premida a tecla Shift.

0
0
0
2016-06-09 21:22:49 +0000

Precisava de dividir repetidamente as duas janelas de navegação superior e inferior no Windows 10 com uma configuração multi-monitor com muitas outras janelas já abertas. Podia fazê-lo manualmente, mas queria uma solução melhor.

encontrei a extensão Chrome Extensão “Tab Resize - Split Screen Layouts”, o que me facilitou imenso a tarefa.

Basta abrir uma nova Janela Cromo, clicar no ícone da extensão “Tab Resize - Split Screen Layouts”, escolher a opção 2x1. Agora é fácil e agradável.

0
0
0
2013-12-04 07:30:48 +0000

Uma opção que considerei útil é subdividir os vossos monitores em meios virtuais usando DisplayFusion . Configurou isto fazendo o seguinte:

& - Clique com o botão direito do rato no ícone DisplayFusion localizado na sua área de notificação e vá para Monitor Configuration. & - Seleccione o monitor que pretende configurar. & - Adicione um vertical split ao monitor. (Pode brincar com isto e dividir ainda mais os seus monitores.)

& Com isto activado, deverá poder usar as suas teclas Windows + Setas para navegar na sua janela de modo a maximizar essa nova área verticalmente dividida do seu monitor. Estou prestes a executar os meus dois monitores 1920x1200 em modo retrato assim que os meus 30" entrarem e as janelas de encaixe vertical forem uma necessidade.