1

在 Sdef 中指定any命令结果的类型时,似乎不能简单地返回 NS 类型,例如NSNumber. 相反,需要返回一个NSAppleEventDescriptor.

但是,NSAppleEventDescriptor它可以处理的值相当有限。似乎不支持浮点数,例如 C 的double类型。

那么,如何为该any类型返回双精度值呢?

4

1 回答 1

1

10.11 有一个直接的方法,一个doubleValue属性,对于 10.11 之前的系统版本,您可以使用该方法将描述符强制coerceToDescriptorType为这些类型之一

typeIEEE32BitFloatingPoint = 'sing',
typeIEEE64BitFloatingPoint = 'doub',
type128BitFloatingPoint = 'ldvl',

例如代码参见AppleScriptToolKit

于 2016-05-06T15:55:25.567 回答