38.5. MiniAEFrame — 开放脚本架构服务器支持 — Python 文档

来自菜鸟教程
Python/docs/2.7/library/miniaeframe
跳转至:导航、​搜索

38.5. 迷你AE框架 — 开放脚本架构服务器支持

模块 MiniAEFrame 为可用作开放脚本架构 (OSA) 服务器的应用程序提供框架,即 接收和处理 AppleEvents。 它可以与 FrameWork 结合使用或独立使用。 例如,它用于 PythonCGISlave

MiniAEFrame 模块定义了以下类:

class MiniAEFrame.AEServer
处理 AppleEvent 调度的类。 您的应用程序应该将此类与 MiniApplicationFrameWork.Application 一起子类化。 您的 __init__() 方法应该为这两个类调用 __init__() 方法。
class MiniAEFrame.MiniApplication
FrameWork.Application 或多或少兼容但功能较少的类。 它的事件循环支持苹果菜单、command-dot 和 AppleEvents; 其他事件被传递给 Python 解释器和/或 Sioux。 如果您的应用程序想要使用 AEServer 但不提供自己的窗口等,则很有用。

38.5.1. AEServer 对象

AEServer.installaehandler(classe, type, callback)
安装 AppleEvent 处理程序。 classetype 是四字符 OSA 类和类型指示符,允许使用 '****' 通配符。 当收到匹配的 AppleEvent 时,将解码参数并调用您的回调。
AEServer.callback(_object, **kwargs)

使用 OSA 直接对象作为第一个位置参数调用您的回调。 其他参数作为关键字参数传递,以 4 个字符的指示符作为名称。 传递了三个额外的关键字参数:_class_type 是类和类型指示符,而 _attributes 是具有 AppleEvent 属性的字典。

您的方法的返回值用 aetools.packevent() 打包并作为回复发送。

请注意,当前的设计存在一些严重的问题。 具有非标识符 4 字符指示符作为参数的 AppleEvents 无法实现,并且不可能向发起者返回错误。 这将在未来的版本中解决。