在Mac上的Applescript中以数字方式显示系统的输出音量

时间:2015-01-15 03:20:48

标签: macos variables applescript system volume

我有一个简单的小Applescript,我写了几个月后,我已经命名为MiniVolume并给出了一个便于访问的停靠图标。它的工作方式如下:用户打开应用程序,并询问他们想要将输出量更改为什么。然后,用户输入一个数值,按下提交,系统的输出音量将更改为用户输入的数字。

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

以下是AppleScript(我想这是一个足够简短的版本。请通过StackOverflow规则告诉我这个案例):

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 & "

但两项都没有奏效。我该怎么做呢?

谢谢!

1 个答案:

答案 0 :(得分:0)

这种方式有点奇怪。这是一个get volume settings命令,其结果是类volume 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) & "