AppleScript ile oynamak Birkaç pencerenin konumunu değiştirmek istiyorum position
ancak monitörü tanımlamakta sorun yaşıyorum. Şu anda seyahatlerim sırasında MacBook'umla bağlantı kurduğum birkaç farklı boyut ve marka monitörüm var. Bağlandığım dört monitörün hepsinde yinelenen tek olay, değiştirmek istediğim monitörün menü çubuğunu içermesidir.
Test ederken do shell script "system_profiler SPDisplaysDataType
, döndürülen metnin Main Display: Yes
, menü çubuğunun çıkartma işleminden kaynaklandığı ana olarak kabul edilip edilmediğinden emin değilim :
Graphics/Displays:
Intel Iris Pro:
Chipset Model: Intel Iris Pro
Type: GPU
Bus: Built-In
VRAM (Dynamic, Max): 1536 MB
Metal: Supported
Displays:
Color LCD:
Display Type: Built-In Retina LCD
Resolution: 2880 x 1800 Retina
Mirror: Off
Online: Yes
Rotation: Supported
Automatically Adjust Brightness: Yes
Connection Type: DisplayPort
Thunderbolt Display:
Display Type: LCD
Resolution: 2560 x 1440
Main Display: Yes
Mirror: Off
Online: Yes
Rotation: Supported
Automatically Adjust Brightness: No
Connection Type: DisplayPort
Eğer benim varsayımım Main Display
doğruysa, tanımlanmış ana ekranın çözünürlüğünü nasıl düzgünce açmalıyım ki pencereleri değiştireyim?
Araştırma yaptığımda, her bir ekrana genellikle bir adım atılacağı anlaşılıyor:
- Bir pencereyi çift monitör kullanarak AppleScript ile konumlandırma
- Belirli Bir Monitör için AppleScript Çalıştır
- AppleScript kullanarak bazı uygulamaların pencere boyutunu alamıyor veya ayarlayamıyor musunuz?
- AppleScript ile pencerenin konumunu ayarlama
Bu yüzden, bunun bir arada iki soru olup olmayacağını bilmiyorum. Birden fazla monitöre bağlanırken sekansın nasıl belirlendiğine biraz şaşırdım (örneğin bugün yıldırım ekranına bağlı olabilirim ama yarın iki DisplayPorts aracılığıyla iki Dell monitörüne bağlı olabilirim) ve eğer bir yol varsa özellikle menü çubuğunu temel alarak bir monitörü hedefleyin.
Uygulamayı zaten görebiliyorum ve onun boyutu:
tell application "System Events" to tell application process "Notes" to set theSize to get size of window 1
set theWidth to item 1 of theSize
set theHeight to item 2 of theSize
Ancak sorunum kararın belirlenmesinde düşüyor, böylece hesaplamayı position
ve bounds
uygulama penceresini taşıyabilirim.