iTunes 12: Come scorrere le opzioni di visualizzazione con script / collegamento?

0

Sto provando a scrivere un applecript che scorre tra i brani, gli album, gli artisti, i compositori, i generi e il back to Songs.

Nonc'ènullanelDizionariodiapplescriptperquantoriguardaquesto,quindidevoricorrereaUIscripting/Accessibility.Questoèquellochehofinora:

tellapplication"System Events" to tell process "iTunes"

    set frontmost to true -- necessary
    delay 1 -- for last line to take effect, delete if you bind this to keyboard shortcut

    tell window 1 -- tell window "iTunes" only works when in fullscreen

        tell pop up button 2 to perform action "AXPress" -- equivalent of
        --keystroke "j" using {command down}

        tell UI element 1 of row 5 of table 1 of pop over 1 of pop up button 2 to perform action "AXPress"
        -- pressing Genres button, assuming Vies is not in Genres already, of course

    end tell
end tell

Puoi eseguirlo con Script Editor, o preferibilmente per il resto della domanda, associarlo a una scorciatoia da tastiera e richiamarlo mentre si trova in iTunes. Quando lo fai, vedi il menu a comparsa lampeggiare sullo schermo, vero?

Ora, ecco la parte interessante: usa il cursore per fare clic sul pulsante a comparsa, spostati verso il basso e posiziona il cursore su Artisti .

IlcursorestessoèomessodallafunzioneScreenshotdiOSX,mapuoivedereArtistiafuoco.OrapremiEscpernascondereilmenueinvocaloscriptmentreilcursoresitrovaancorainquestaposizione.

Bam!OraseipassatoallavistaArtisti.Siscoprecheil2%performaction"AXPress" viene eseguito con il cursore perché il menu a comparsa non è a fuoco dopo aver fatto clic sul pulsante di opzione vie.

C'è un modo più semplice per verificare questo problema / bug. 1) Fare clic sull'opzione di visualizzazione. 2) Premere il tasto Giù un paio di volte. Ci si aspetterebbe che lo stato attivo si spostasse su Canzoni , quindi su Album , giusto? No, stai solo spostando gli elementi della libreria sullo sfondo, mentre il menu è ancora in primo piano.

Quindi, la mia domanda si riduce a come posso spostare il cursore su questo menu a comparsa?

AGGIORNAMENTO: Grazie a jackjr300 per la risposta. Questo è il mio script finito:

tell application "System Events"
    tell process "iTunes"
        set frontmost to true
        delay 1
        tell pop up button 2 of window 1
            click

            if value of attribute "AXDescription" is "Genres" then
                tell (select row 1 of table 1 of pop over 1) to click UI element 1
            end if
            if value of attribute "AXDescription" is "Songs" then
                tell (select row 2 of table 1 of pop over 1) to click UI element 1
            end if
            if value of attribute "AXDescription" is "Albums" then
                tell (select row 3 of table 1 of pop over 1) to click UI element 1
            end if
            if value of attribute "AXDescription" is "Artists" then
                tell (select row 4 of table 1 of pop over 1) to click UI element 1
            end if
            if value of attribute "AXDescription" is "Composers" then
                tell (select row 5 of table 1 of pop over 1) to click UI element 1
            end if

        end tell
    end tell
end tell
    
posta fartheraway 22.10.2014 - 04:30
fonte

1 risposta

1

Utilizza il comando select per selezionare la riga.

tell application "System Events"
    tell process "iTunes"
        set frontmost to true 
        delay 1
        tell pop up button 2 of window 1
            click
            tell (select row 5 of table 1 of pop over 1) to click UI element 1
        end tell
    end tell
end tell
    
risposta data 22.10.2014 - 15:34
fonte

Leggi altre domande sui tag