AXSelectedRows'un beni nihayetinde gönderime gönderdiğini hissediyorum :) Kapsamlı bir araştırmadan sonra, AXSelectedRow'ların içeriğini programlı olarak nasıl listeleyeceğime karar verdim; Basitçe söylemek gerekirse, herhangi bir AXOutline'dan seçilen satırları almak için.
Önemsiz geliyor, ancak bir cevabı bulmak zor oldu - özellikle çevrimiçi dokümantasyon olmamasından dolayı (muhtemelen bir kitap almalıyım!) Garip bir şekilde, birçok kişi sadece programlı bir şekilde seçilmiş satırları almak yerine satırları seçmek istiyor gibi görünüyor. .
Kesinlikle kesinlikle yakınım. Şimdiye kadar ulaştım:
set selectedRows to value of attribute "AXSelectedRows" of outline1
Nerede outline1
bir AXOutline ayarlanır. Sonraki:
set selectedRow to item 1 of selectedRows
Burası biraz bulanıklaştığı yer ( row 1
yerine koymak için başarısız olduktan sonra item 1
). selectedRow
Tür AXRow
(veya row
) olmasını beklerdim , ancak bunun yerine Automator çıkışı görüntülenir:
application "System Events"
Yani, öğe, "uygulama olayları" uygulamasının bir örneği gibi görünüyor - bu da önemli bir şeyi göz ardı ettiğime inanmamı sağlıyor. Ben her kombinasyonu denedim hissediyorum, söyledikten value
'ın, attribute
' ler ve row
bazı tip döküm dahil - 's.
Sinir bozucu kısım, Erişilebilirlik Müfettişindeki AXSelectedRows'un içeriğini gerçekten görebilmem! Ve böylece var olduğunu biliyorum. Geçici bir çözüm olarak kullanıyorum:
set selectedRows to selected of rows of outline1
Bununla birlikte, çok büyük listeler için performans sorunlarına yol açabilecek 'gerçek' değerleri bulmak için hala tüm diziyi geçmem gerektiğinden bu kesinlikle tercih edilemez.
Herhangi bir yardım çok takdir edilecektir!