Método abreviado de teclado para mover una ventana a otra pantalla

20

Cuando se trabaja con dos (o más pantallas), un problema común es que las aplicaciones iniciadas aparecen en la pantalla "incorrecta". Especialmente encuentro esto molesto cuando inicio un editor de texto desde la línea de comando, porque tengo que dejar la fila de inicio con mi mano derecha para arrastrar la ventana a la pantalla "derecha" antes de poder seguir escribiendo.

¿Es posible definir un atajo de teclado que mueva la aplicación actual a la otra / siguiente pantalla?

Editar : estoy usando Windows XP, pero es bueno saber que la función ya existe en Windows 7.


Edit2 : fui por el script de autohotkey . Esta adaptación me funciona:

#q::
WinGetPos, winx, winy,,, A
WinGet, mm, MinMax, A
WinRestore, A
If (winx > 1270)
{
    newx := winx-1270
    OutputDebug, Moving left from %winx% to %newx%
}
else
{
    newx := winx+1270
    OutputDebug, Moving right from %winx% to %newx%
}

WinMove, A,, newx, winy

if mm=1
    WinMaximize, A
Return

Tuve que hacer uso de las declaraciones OutputDebug y dbgview para descubrir el valor de umbral adecuado 1270para mover hacia la izquierda o hacia la derecha. El umbral exacto es especialmente importante al mover ventanas maximizadas hacia la izquierda.

wcoenen
fuente

Respuestas:

4

Autohotkey! Esto se moverá entre los monitores (dos monitores 1680x1050, establezca el valor después Loop,de ser la resolución de pantalla de cada monitor / 10 si es diferente) en winkey (#) y q. El control es ^, alt es!, Shift es + y las letras son letras. También puedes usar combinaciones de modificadores.

#z:: ;Move the active window to the other monitor.
WinGetPos, winx, winy,,, A
WinGet, oldWin,ID,A
WinActivate, A
WinGet, mm, MinMax, A
WinRestore, A
If winx+5 >= 0 then
    mult=1
else
    mult=-1
WinMove,A,, winx-(1680*mult), winy
if mm=1
    WinMaximize, A
Return
Phoshi
fuente
1
Esto es prometedor, pero el ciclo es realmente lento. La ventana se arrastró sobre mi escritorio a paso de
tortuga
El script también mueve la ventana debajo del puntero del mouse, en lugar del que está activo actualmente.
wcoenen
Whoops! Lo tengo en el mouse 4 y hago doble clic, por lo que debajo del mouse es mejor para mí, y lo que se arrastra es porque XP fue lento al volver a dibujar las ventanas. Está bien en Vista y superior. Un momento, por favor :)
Phoshi
Correcto,
edité
58

¿Qué versión de Windows estás usando? Windows 7 viene con soporte nativo para exactamente esto.

Win+ Shift+ left: Mueve la ventana enfocada un monitor a la izquierda

Win+ Shift+ right: Mueve la ventana enfocada un monitor a la derecha

EDITAR : Para XP puedes probar UltraMon . Entre otras cosas, le permitirá definir teclas de acceso rápido para "Mover ventana al siguiente monitor" y "Mover ventana al monitor anterior".

BenA
fuente
1
Me siento como un novato por no saber que +1
Ivo Flipse
Fuera de tema, pero ¿cómo hiciste esos "botones"?
sYnfo
2
@sYnfo envuelve el "botón" en una etiqueta <kbd> </kbd>
BenA
+1, gracias por eso. Estaba usando Ultramon anteriormente, ya no lo necesito con esto.
Pauk
2
Esto debería haber sido elegido como la respuesta. Me alegro de haber encontrado esto.
Bendice a Yahu el
3

en otras versiones de Windows, puede hacer clic derecho en la barra de tareas, seleccionar "mover" y luego usar las teclas de flecha para mover la ventana a la ventana correcta ... Solo menciono esto porque de vez en cuando, accidentalmente dejo un ventana en el monitor incorrecto y luego, cuando uso mi computadora portátil en casa, no puedo ver la ventana porque está fuera del monitor. ¡Me tomó un tiempo resolver esto!


fuente
1
Aunque bajo Windows7 no puede moverse desde el menú de la barra de tareas, aún puede mover las ventanas usando las teclas de acceso directo: Ctrl + Espacio y luego M, teclas de flecha, finalmente Enter. en.wikipedia.org/wiki/…
Roland Pihlakas
Corrección: en Windows 7, puede moverse desde la barra de tareas - UsarShift + Right Click
Amit Naidu
1

Si no tiene Windows 7, puede probar DisplayFusion . La versión gratuita le permite configurar teclas de acceso rápido para mover ventanas al siguiente monitor, y varias otras cosas.

Charles Savoie
fuente