1

このコードを使用して、iTunes で選択した各トラックを AppleScript Obj-C のリストに追加しています。

    tell application "iTunes"
        set these_titles to {}
        if selection is not {} then
            set mySelection to selection
            repeat with aTrack in mySelection
                if class of aTrack is file track then
                    set end of these_titles to ((name of aTrack) as string)
                end if
            end repeat
        end if
    end tell

GUI のテキスト ボックスに出力を表示する次の行があります。

    trackTable's setStringValue_(these_titles)

しかし、それは次のようになります。

setStringValue の出力

引用符と括弧を使わずに、各リスト項目を 1 行で取得する方法はありますか?

4

2 に答える 2

1

これは、リストの適切な出力です。特定の形式の文字列に強制したい場合は、明示的に行う必要があります。リストに使用される区切り文字を変更し、変数を文字列に変換するだけです。これにより、その区切り文字が各リスト項目の間にテキストとして配置されます。したがって、このコードをコードの最後に追加します。

set oldTID to AppleScript's text item delimiters
set AppleScript's text item delimiters to ", "
set these_titles to these_titles as string
set AppleScript's text item delimiters to oldTID

コンマとスペースの代わりに、区切り文字を任意のものに変更します。

于 2014-08-27T22:38:10.500 に答える
1

このトピックは AppleScriptObjC に関連しているため、これも示したいと思います。

set these_titles to these_titles's componentsJoinedByString:", "
于 2014-08-28T09:14:09.820 に答える