在 Mac 上用 Applescript 数字显示系统的输出音量

Displaying The System's Output Volume Numerically in Applescript on a Mac

我有一个几个月前写的简单的小 Applescript,我将其命名为 MiniVolume 并提供了一个停靠图标以便于访问。它是这样工作的:用户打开应用程序,它会询问他们想要将输出音量更改为什么。然后用户输入一个数值,点击提交,系统输出的音量就变成用户输入的数字。

有一个小功能我想实现一段时间了,并留下了一个 space 来实现:将当前输出音量显示为数值。这样做对我来说非常宝贵,因为它可以帮助我衡量在将音量设置为几分之一档位时我需要更改多少数字。

这是 AppleScript(我想足够短,可以一块放到这里。如果 Whosebug 的规则不是这样,请告诉我):

set dialogText to "MiniVolume" & "
" & "
" & "Current volume:" & "
" & "Set the volume to:"
display dialog dialogText default answer ""
set newVolume to text returned of result
set volume output volume newVolume

您看到 "Current volume:" 的地方是我想在文本中实现变量的地方。我试图通过说

这样的话来着手做这件事
" & "Current volume:" & output volume & "

" & "Current volume:" & volume & "

但都没有用。我该怎么做?

谢谢!

它的工作方式有点奇怪。有一个get volume settings命令,它的结果是一条classvolume settings的记录,它有一个属性output volume.

我说这很奇怪,因为它有效:

get volume settings -- result: {output volume:25, input volume:50, alert volume:83, output muted:false}

我很想这样做:

get output volume of volume settings -- fails to compile

不起作用的原因是 get volume settings 不是 get 命令后跟 volume settings 作为要获取的东西。这是一个不可分割的命令短语。

无论如何,正确的做法是:

get output volume of (get volume settings) -- result: 25

所以,无论如何,您可以在代码中使用这一行:

" & "Current volume:" & output volume of (get volume settings) & "