Jak ustawić fokus na określone okno danej aplikacji za pomocą applescript?Ustaw fokus na konkretne okno aplikacji używając applescript
Mam kilka okien iTerm2 działających na różnych wyświetlaczach. Chcę ustawić fokus na określone okno za pomocą applescript.
Potrzebuję dwóch rzeczy, jednego skryptu, który zbiera identyfikatory okna i drukuje je na standardowe wyjście. Mam to:
tell application "iTerm"
set wins to id of every window
end tell
która drukuje 6 liczby całkowite: 3034, 2528, -1, -1, -1, -1
Bonus Pytanie: Jakie są cztery -1'S?
Potem spróbuj:
tell application "System Events"
activate window 3034
end tell
na którym jedyną rzeczą dzieje, że tracę ostrość mojego obecnego terminalu (w którym piszę te polecenia), nie ma znaczenia, czy mogę określić 3034 lub 2528 jako ID.
Sprawdź [to pytanie na Ask Different] (http://apple.stackexchange.com/questions/39204/script-to-raise-a-single-window-to-the-front); jeśli połączysz akcję "wykonuj akcję" AXRaise "z niektórych Windows" z aplikacją "powiedz" Aplikacja "aby aktywować", dostaniesz to, czego chcesz. Ale zastrzeżenie (i powód, dla którego nie jest to odpowiedź), polega na tym, że nie można w ten sposób określać okien za pomocą identyfikatora okna (co ma sens, tak jak rozumiem, identyfikatory okien są specyficzne dla aplikacji). Dodatkowe pytanie: wartości -1 są prawdopodobnie takie, jak okna dialogowe preferencji/wyszukiwania, które mogą, ale nie muszą być widoczne. –