Cgeventtap 在“NSEventTap”中返回我自己创建的“CGEvent”`
Cgeventtap 在“NSEventTap”中返回我自己创建的“CGEvent”`,cgeventtap,manual-retain-release,Cgeventtap,Manual Retain Release,CGEventTapCallBack的文档 国家: CGEventRef事件 传入事件。此事件由调用方所有, 你不需要释放它 如果我希望吃掉事件并返回NULL,会发生什么?我应该自己发布它吗 同样,如果我希望用我自己创建的事件替换它,我是否应该cf释放传入事件,并cf保留新创建的事件 或者,我是否必须就地修改收到的CGEvent的内容?如果确实是这样,是否有任何API调用可以使用热插拔?复制自CGEventTapCallBack的文档(问题中的链接): 讨论 如果事件点击是活动筛选器,则回调函数
CGEventTapCallBack的文档
国家:
CGEventRef事件
传入事件。此事件由调用方所有,
你不需要释放它
如果我希望吃掉事件并返回NULL
,会发生什么?我应该自己发布它吗
同样,如果我希望用我自己创建的事件替换它,我是否应该cf释放
传入事件,并cf保留
新创建的事件
或者,我是否必须就地修改收到的CGEvent
的内容?如果确实是这样,是否有任何API调用可以使用热插拔?复制自CGEventTapCallBack
的文档(问题中的链接):
讨论
如果事件点击是活动筛选器,则回调函数应返回以下内容之一:
- 传入的(可能已修改)事件。此事件将传回事件系统
- 新构造的事件。新事件传回事件系统后,新事件将与原始事件一起发布
- 如果要删除传入的事件,则为NULL
新事件将与原始事件一起发布。不要发布原始事件,也不要发布新事件