Ustaw rozmiar / pozycję okna (Wiele) programów

11

Szukam rozwiązania podobnego do tego , ale dla Windows 7 (64-bit), a nie tylko dla terminala. To z pewnością nie jest duplikatem tego pytania .

Problem

Niektóre programy pamiętają swoją ostatnią pozycję / rozmiar (np. Firefox, Notepad ++), podczas gdy inne są niestety uparte (np. Git). Te uparte wymagają ode mnie dodatkowej minuty (tak długo, prawda?) Przeniesienia ich z powrotem do pożądanych pozycji / rozmiarów, zanim zacznę pracować.

Przypadek użycia

Jestem programistą i mam bardzo specyficzne preferencje dla mojego środowiska programistycznego. Mam dwa monitory i moje IDE (różni się w zależności od zadania), terminal Git, okno Eksploratora Windows, Firefox itp. Otwarte jednocześnie, w określonym układzie, który pomaga mi wydajniej pracować.

Automatyczna konfiguracja oparta na środowisku

Idealnie byłoby, gdybym mógł otworzyć wszystkie te programy i nacisnąć kombinację klawiszy skrótu, aby rzucić wszystkie okna w pożądane pozycje o odpowiednich rozmiarach. Lub jeszcze bardziej idealnie , mieć zestaw ustawień (skrypty, kombinacje skrótów itp.), Które mógłbym uruchomić w określonych scenariuszach, aby otworzyć zestaw określonych programów w zależności od zadania (może wymagać zbyt wiele) i ustawić ten konkretny układ .

Przykład: skrypt programistyczny w języku C #, który otwiera Visual Studio i wiele innych programów, a następnie odpowiednio ustawia lokalizacje okien. Kolejny do rozwoju Node.js.

Narzędzia do pracy?

Mam tylko pewne niejasne wyobrażenia o możliwościach niektórych narzędzi. Może Windows Power Shell byłby odpowiedni? Nie miałbym nic przeciwko pisaniu skryptów do tych zadań. Wygląda też na to, że Auto Hotkey może działać.


Czy ktoś ma jakieś doświadczenie z tego rodzaju funkcjami i ma jakieś zalecenia, jak zrobić coś takiego? Jeśli to możliwe, najlepiej byłoby uruchomić skrypt / klawisz skrótu, aby otworzyć zestaw programów i automatycznie ustawić wszystkie rozmiary / pozycje.

Uwaga: oznaczyłem to jako powershelli autohotkeyna wypadek, gdyby te narzędzia bardzo dobrze pasowały do ​​zadania. Jeśli uważasz, że jest to nieprawidłowo oznaczone, możesz je usunąć / ponownie oznaczyć!

Chris Cirefice
źródło
Wierzę, że AutoHotkey może w rzeczywistości chwytać okna i ustalać ich pozycje. Jeśli szukasz łatwiejszego w użyciu systemu, spróbuj pobrać AutoHotkey_L wraz z Macro Creator v4.1.1.
Stonestorm,
Tak właśnie myślę, ale zanim spróbuję skonfigurować skrypty dla tego programu, chciałbym się upewnić, że poradzi sobie ze wszystkimi zadaniami, które mam na myśli. Ale po prostu wykonując proste wyszukiwanie w Google, wydaje się, że Auto Hotkey może po prostu rozwiązać mój problem ... WinMove jest najwyraźniej funkcją, którą można wywołać. Wygląda odpowiednio, muszę powiedzieć :)
Chris Cirefice
1
Ten drugi jest lepszym rozwiązaniem do tego zadania, ponieważ używał zarówno programu PowerShell, jak i AutoHotKey. Ich dokumentacja jest również całkiem przyzwoita.
Tim Ferrill,
Przyjrzę się temu, kiedy będę miał trochę wolnego czasu - kiedy wymyślę tutaj rozwiązanie, opublikuję je jako odpowiedź. Może ktoś uzna to za przydatne :)
Chris Cirefice,

Odpowiedzi:

8

Możesz użyć modułu PowerShell UIAutomation .

Na przykład, aby przenieść Notatnik do lokalizacji ekranu (100, 100):

$w = Get-UIAWindow -ProcessName notepad
$w.Move(100, 100)
chrzanić
źródło
Zainstalowałem moduł, ale mówi: „Castle.Proxies.UiElementProxy_1 nie zawiera metody Move”
Eduardo Wada
W dzisiejszych czasach wolę polecenia cmdlet AutoIt dla programu PowerShell .
dangph,
0

Możesz także wypróbować narzędzie TaskLayout (nie darmowe), które oferuje przyjazny dla użytkownika sposób tworzenia takich układów bez skryptowania / programowania.

TaskLayout to małe przenośne narzędzie systemu Windows, które pozwala zapisać / przywrócić układ pulpitu (zestaw określonych aplikacji / okien z odpowiednią pozycją na ekranie) za pomocą jednego kliknięcia.

Aplikacja może zapisywać różne pliki układu pulpitu, uruchamiać je i przywracać okna, które były aktywne w tym momencie. Edytor układu pomaga wybrać kilka otwartych okien i zapisać konfigurację w pliku. Ilekroć potrzebujesz przywrócić okno o lokalizacji lub określonej ścieżce, po prostu uruchom plik. Aplikacja może przywrócić otwarte okno do stanu, w którym je zapisałeś.

Clance
źródło