Définir (plusieurs) la taille / position de la fenêtre des programmes

11

Je recherche une solution similaire à celle-ci , mais pour Windows 7 (64 bits), et pas seulement pour le terminal. Ce n'est certainement pas non plus un double de cette question .

Le problème

Certains programmes se souviennent de leur dernière position / taille (par exemple Firefox, Notepad ++), tandis que d'autres sont malheureusement têtus (par exemple Git). Les têtus me demandent de passer une minute supplémentaire (si longue, non?) Pour les ramener à leurs positions / tailles souhaitées avant de pouvoir commencer à travailler.

Cas d'utilisation

Je suis programmeur et j'ai une préférence très spécifique pour mon environnement de développement. J'ai deux moniteurs, et mon IDE (varie selon la tâche), le terminal Git, la fenêtre de l'Explorateur Windows, Firefox, etc. ouverts en même temps, dans une disposition spécifique qui m'aide à travailler plus efficacement.

Configuration automatique basée sur l'environnement

Idéalement , je pourrais ouvrir tous ces programmes et appuyer sur une combinaison de touches de raccourci pour lancer toutes les fenêtres dans leurs positions souhaitées avec les tailles correctes. Ou encore plus idéalement , avoir un ensemble de paramètres (scripts, combinaisons de touches de raccourci, etc.) que je pourrais exécuter dans certains scénarios pour ouvrir un ensemble de programmes spécifiques en fonction de la tâche (peut demander trop), et définir cette disposition spécifique .

Exemple: un script de développement C # qui ouvre Visual Studio et de nombreux autres programmes, puis définit correctement l'emplacement de leurs fenêtres. Un autre pour le développement de Node.js.

Des outils pour le travail?

Je n'ai que de vagues idées sur les capacités de certains outils. Peut-être que Windows Power Shell serait approprié? Cela ne me dérangerait pas d'écrire des scripts pour ces tâches. La touche de raccourci automatique semble également fonctionner.


Quelqu'un a-t-il une expérience avec ce type de fonctionnalité et a-t-il des recommandations sur la façon de procéder à quelque chose comme ça? La possibilité d'exécuter un script / raccourci clavier pour ouvrir un ensemble de programmes et définir automatiquement toutes les tailles / positions serait la meilleure, si possible.

Remarque: J'ai marqué cela comme powershellet autohotkeyjuste au cas où ces outils s'appliqueraient très bien à la tâche. Si vous pensez que cela n'est pas correctement marqué, n'hésitez pas à supprimer / réétiqueter!

Chris Cirefice
la source
Je pense qu'AutoHotkey peut en fait saisir des fenêtres et définir leurs positions. Si vous recherchez un système plus facile à utiliser, essayez d'obtenir AutoHotkey_L avec Macro Creator v4.1.1.
Stonestorm
C'est ce que je pense, mais avant de commencer à essayer de configurer des scripts pour ce programme, je voudrais m'assurer qu'il peut gérer toutes les tâches que j'ai en tête. Mais juste en faisant une simple recherche Google, il semble que le raccourci clavier automatique puisse juste résoudre mon problème ... WinMove est apparemment une fonction qui peut être appelée. Cela semble approprié, je dois dire :)
Chris Cirefice
1
Ayant utilisé à la fois PowerShell et AutoHotKey, ce dernier est la meilleure solution pour cette tâche. Leur documentation est également assez décente.
Tim Ferrill
Je vais y jeter un œil lorsque j'aurai du temps libre - lorsque je trouverai une solution ici, je la posterai comme réponse. Peut-être que quelqu'un le trouvera utile :)
Chris Cirefice

Réponses:

8

Vous pouvez utiliser le module PowerShell UIAutomation .

Par exemple, pour déplacer le Bloc-notes vers l'emplacement de l'écran (100, 100):

$w = Get-UIAWindow -ProcessName notepad
$w.Move(100, 100)
dangph
la source
J'ai installé le module mais il dit "Castle.Proxies.UiElementProxy_1 ne contient pas la méthode Move"
Eduardo Wada
Je préfère les applets de commande AutoIt pour PowerShell de nos jours.
dangph
0

Vous pouvez également essayer l' outil TaskLayout (pas un freeware) qui offre un moyen convivial de créer de telles mises en page sans script / programmation.

TaskLayout est un petit utilitaire Windows portable qui permet d'enregistrer / restaurer la disposition du bureau (un ensemble d'applications / fenêtres spécifiées avec la position correspondante à l'écran) en un seul clic.

L'application peut enregistrer différents fichiers de disposition du bureau, les exécuter et restaurer les fenêtres qui étaient actives à ce moment. L'éditeur de mise en page vous aide à choisir plusieurs des fenêtres ouvertes et à enregistrer la configuration dans un fichier. Chaque fois que vous avez besoin de restaurer la fenêtre ayant l'emplacement ou un chemin spécifique, exécutez simplement le fichier. L'application peut restaurer la fenêtre ouverte dans l'état dans lequel vous les avez stockées.

Clance
la source