Utilisez ALT pour déplacer des fenêtres sous Windows comme sous Linux


14

Dans la plupart des gestionnaires de fenêtres Linux, on peut utiliser la Altclé tout en cliquant et en faisant glisser pour réorganiser les fenêtres. C'est l'une de mes fonctionnalités préférées des gestionnaires de fenêtres Linux.

Existe-t-il un moyen de le faire dans Windows 7?


"une de mes fonctionnalités préférées de certains gestionnaires de fenêtres Linux". FTFY. Et vous voudrez peut-être en nommer un ou deux pour que les gens qui ne sont pas conscients du comportement puissent l'essayer ...
dmckee --- chaton ex-modérateur

Mettez à niveau vers Windows 7 et votre clé Windows vous rendra heureux
Ivo Flipse

AFAIK Gnome, KDE, Xfce et plusieurs variantes de boîte * le prennent en charge par défaut ou avec une configuration facile.
Corey D


Le doublon devrait être l'inverse.
fixer1234

Réponses:



1

Utilisez ce script autohotkey :

  • fonctionne PARFAITEMENT sur Windows 10
  • facile à installer
  • peut être compilé dans une application autonome

source: https://autohotkey.com/docs/scripts/EasyWindowDrag_(KDE).htm

; Easy Window Dragging -- KDE style (requires XP/2k/NT) -- by Jonny
; http://www.autohotkey.com
; This script makes it much easier to move or resize a window: 1) Hold down
; the ALT key and LEFT-click anywhere inside a window to drag it to a new
; location; 2) Hold down ALT and RIGHT-click-drag anywhere inside a window
; to easily resize it; 3) Press ALT twice, but before releasing it the second
; time, left-click to minimize the window under the mouse cursor, right-click
; to maximize it, or middle-click to close it.

; This script was inspired by and built on many like it
; in the forum. Thanks go out to ck, thinkstorm, Chris,
; and aurelian for a job well done.

; Change history:
; November 07, 2006: Optimized resizing code in !RButton, courtesy of bluedawn.
; February 05, 2006: Fixed double-alt (the ~Alt hotkey) to work with latest versions of AHK.

; The Double-Alt modifier is activated by pressing
; Alt twice, much like a double-click. Hold the second
; press down until you click.
;
; The shortcuts:
;  Alt + Left Button  : Drag to move a window.
;  Alt + Right Button : Drag to resize a window.
;  Double-Alt + Left Button   : Minimize a window.
;  Double-Alt + Right Button  : Maximize/Restore a window.
;  Double-Alt + Middle Button : Close a window.
;
; You can optionally release Alt after the first
; click rather than holding it down the whole time.

If (A_AhkVersion < "1.0.39.00")
{
    MsgBox,20,,This script may not work properly with your version of AutoHotkey. Continue?
    IfMsgBox,No
    ExitApp
}


; This is the setting that runs smoothest on my
; system. Depending on your video card and cpu
; power, you may want to raise or lower this value.
SetWinDelay,2

CoordMode,Mouse
return

!LButton::
If DoubleAlt
{
    MouseGetPos,,,KDE_id
    ; This message is mostly equivalent to WinMinimize,
    ; but it avoids a bug with PSPad.
    PostMessage,0x112,0xf020,,,ahk_id %KDE_id%
    DoubleAlt := false
    return
}
; Get the initial mouse position and window id, and
; abort if the window is maximized.
MouseGetPos,KDE_X1,KDE_Y1,KDE_id
WinGet,KDE_Win,MinMax,ahk_id %KDE_id%
If KDE_Win
    return
; Get the initial window position.
WinGetPos,KDE_WinX1,KDE_WinY1,,,ahk_id %KDE_id%
Loop
{
    GetKeyState,KDE_Button,LButton,P ; Break if button has been released.
    If KDE_Button = U
        break
    MouseGetPos,KDE_X2,KDE_Y2 ; Get the current mouse position.
    KDE_X2 -= KDE_X1 ; Obtain an offset from the initial mouse position.
    KDE_Y2 -= KDE_Y1
    KDE_WinX2 := (KDE_WinX1 + KDE_X2) ; Apply this offset to the window position.
    KDE_WinY2 := (KDE_WinY1 + KDE_Y2)
    WinMove,ahk_id %KDE_id%,,%KDE_WinX2%,%KDE_WinY2% ; Move the window to the new position.
}
return

!RButton::
If DoubleAlt
{
    MouseGetPos,,,KDE_id
    ; Toggle between maximized and restored state.
    WinGet,KDE_Win,MinMax,ahk_id %KDE_id%
    If KDE_Win
        WinRestore,ahk_id %KDE_id%
    Else
        WinMaximize,ahk_id %KDE_id%
    DoubleAlt := false
    return
}
; Get the initial mouse position and window id, and
; abort if the window is maximized.
MouseGetPos,KDE_X1,KDE_Y1,KDE_id
WinGet,KDE_Win,MinMax,ahk_id %KDE_id%
If KDE_Win
    return
; Get the initial window position and size.
WinGetPos,KDE_WinX1,KDE_WinY1,KDE_WinW,KDE_WinH,ahk_id %KDE_id%
; Define the window region the mouse is currently in.
; The four regions are Up and Left, Up and Right, Down and Left, Down and Right.
If (KDE_X1 < KDE_WinX1 + KDE_WinW / 2)
    KDE_WinLeft := 1
Else
    KDE_WinLeft := -1
If (KDE_Y1 < KDE_WinY1 + KDE_WinH / 2)
    KDE_WinUp := 1
Else
    KDE_WinUp := -1
Loop
{
    GetKeyState,KDE_Button,RButton,P ; Break if button has been released.
    If KDE_Button = U
        break
    MouseGetPos,KDE_X2,KDE_Y2 ; Get the current mouse position.
    ; Get the current window position and size.
    WinGetPos,KDE_WinX1,KDE_WinY1,KDE_WinW,KDE_WinH,ahk_id %KDE_id%
    KDE_X2 -= KDE_X1 ; Obtain an offset from the initial mouse position.
    KDE_Y2 -= KDE_Y1
    ; Then, act according to the defined region.
    WinMove,ahk_id %KDE_id%,, KDE_WinX1 + (KDE_WinLeft+1)/2*KDE_X2  ; X of resized window
                            , KDE_WinY1 +   (KDE_WinUp+1)/2*KDE_Y2  ; Y of resized window
                            , KDE_WinW  -     KDE_WinLeft  *KDE_X2  ; W of resized window
                            , KDE_WinH  -       KDE_WinUp  *KDE_Y2  ; H of resized window
    KDE_X1 := (KDE_X2 + KDE_X1) ; Reset the initial position for the next iteration.
    KDE_Y1 := (KDE_Y2 + KDE_Y1)
}
return

; "Alt + MButton" may be simpler, but I
; like an extra measure of security for
; an operation like this.
!MButton::
If DoubleAlt
{
    MouseGetPos,,,KDE_id
    WinClose,ahk_id %KDE_id%
    DoubleAlt := false
    return
}
return

; This detects "double-clicks" of the alt key.
~Alt::
DoubleAlt := A_PriorHotkey = "~Alt" AND A_TimeSincePriorHotkey < 400
Sleep 0
KeyWait Alt  ; This prevents the keyboard's auto-repeat feature from interfering.
return

Le script a d'énormes problèmes avec deux écrans utilisant une échelle différente. Un seul écran ou probablement deux écrans de même échelle, cela pourrait fonctionner parfaitement, malheureusement je n'ai pas ce luxe :)
krizajb

Qu'entendez-vous par échelle? Résolution? DPI? windows-font-scaling?
Ярослав Рахматуллин

Échelle de résolution, par exemple ayant un écran avec une échelle de 250% et un autre avec une échelle de 175%.
krizajb

Il a un problème lors de l'utilisation de alt-tab. Vous ne pouvez pas sélectionner un programme lorsque la fenêtre alt-tab est visible en cliquant dessus, ce qui fonctionne sans le script. AltDrag mentionné dans une autre réponse fait les deux ensemble.
JaKu

1

Win-X-Move

Ce programme rend la manipulation des fenêtres (déplacement / redimensionnement) sous MS-Windows, beaucoup plus facile. Vous pouvez maintenant déplacer et redimensionner en faisant glisser alt sur n'importe quel point de la fenêtre avec le bouton gauche et droit de la souris respectivement, comme cela se fait sur la plupart des gestionnaires de fenêtres X11.

http://winxmove.sourceforge.net/

Avec l'application en cours d'exécution, vous pouvez déplacer les fenêtres en cliquant simplement n'importe où en elles tout en maintenant la touche Alt de votre clavier. Pour redimensionner les fenêtres, vous maintenez les touches Alt et Ctrl enfoncées tout en cliquant avec le bouton droit n'importe où dans la fenêtre et en déplaçant le pointeur de la souris dans la direction dans laquelle vous souhaitez redimensionner la fenêtre.

Win-X-Move: déplacer ou redimensionner les fenêtres d'applications en cliquant n'importe où dans celles-ci


AltDrag

AltDrag vous donne la possibilité de déplacer et de redimensionner les fenêtres d'une nouvelle manière. Après avoir démarré AltDrag, vous pouvez simplement maintenir la touche Alt enfoncée, puis cliquer et faire glisser n'importe quelle fenêtre.

Ce comportement existe déjà sous Linux et d'autres systèmes d'exploitation, et AltDrag a été créé avec la mission de copier ce comportement sur la plate-forme Windows, puis de l'étendre davantage avec de nouvelles fonctionnalités intuitives.

https://stefansundin.github.io/altdrag/

Il est beaucoup plus configurable et possède plus de fonctionnalités que la précédente: snap windows, changez la transparence, changez le volume, support multi-écrans ...


Les deux applications ci-dessus sont portables et ont juste besoin de télécharger, d'extraire puis d'exécuter


+1 pour AltDrag.
JaKu

0

Une version améliorée du script mentionné dans une autre réponse ici est disponible sous forme d'application packagée: KDE Mover-Sizer . Comme il s'agit d'un script Autohotkey, j'ai ma propre version fortement personnalisée.


les réponses de lien uniquement ne sont pas bonnes , car elles deviendront invalides lorsque le lien
pourrira

J'aime la façon dont mon lien n'a pas pourri, mais la réponse de @Kelbizzle l'a fait. : haussement d'épaules:
forivall

En outre, la source complète du logiciel lié dépasse la limite de publication: "Le corps est limité à 30000 caractères; vous avez entré 91131." il ne peut pas être inclus.
forivall

même s'il est trop grand, vous devriez toujours publier un résumé (et la partie principale du traitement si possible). Comment puis-je me connecter à une ressource externe de manière conviviale pour la communauté? , meta.stackexchange.com/a/143996/230282 . Pour l'instant, je n'ai aucune idée de quel "script susmentionné" il s'agit
phuclv

vous devez publier la partie principale du traitement du code source des applications que vous avez liées. les réponses en lien uniquement ne sont pas bonnes, vous savez. en outre, vous avez le représentant pour suggérer des modifications. vous êtes un grand garçon, vous pouvez faire le travail
forivall
En utilisant notre site, vous reconnaissez avoir lu et compris notre politique liée aux cookies et notre politique de confidentialité.
Licensed under cc by-sa 3.0 with attribution required.