我正在使用此代码将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)
但它是这样的:
有什么方法可以让每一个列表项在一行上,没有引号和括号吗?
答案 0 :(得分: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
将分隔符更改为您想要的任何内容,而不是逗号和空格。
答案 1 :(得分:1)
因为这个主题与AppleScriptObjC有关,所以我也想展示它。
set these_titles to these_titles's componentsJoinedByString:", "