Cocoa 检测用户是否按下Wacom平板电脑上的按钮
我想知道在Cocoa/Carbon中是否有可能检测到按键组合(例如,Cocoa 检测用户是否按下Wacom平板电脑上的按钮,cocoa,events,macos-carbon,tablet,wacom,Cocoa,Events,Macos Carbon,Tablet,Wacom,我想知道在Cocoa/Carbon中是否有可能检测到按键组合(例如,Ctrl+Z)是来自Wacom按钮还是键盘本身 谢谢 最好的 我只能假设Wacom平板电脑的驱动程序伪造了绑定到特定按钮的键盘事件。如果是这种情况,我认为您无法将它们区分为-pointingDeviceID、-tabletID和friends,它们仅对鼠标事件有效(键盘事件-伪造或真实-无效)。对于“快捷键”,Wacom提供了带有6.1版驱动程序的自定义事件+ 从: WacomTabletDriver版本6.1.0提供了一组Ap
Ctrl+Z
)是来自Wacom按钮还是键盘本身
谢谢
最好的
我只能假设Wacom平板电脑的驱动程序伪造了绑定到特定按钮的键盘事件。如果是这种情况,我认为您无法将它们区分为-pointingDeviceID、-tabletID和friends,它们仅对鼠标事件有效(键盘事件-伪造或真实-无效)。对于“快捷键”,Wacom提供了带有6.1版驱动程序的自定义事件+ 从: WacomTabletDriver版本6.1.0提供了一组Apple事件,使应用程序能够控制平板电脑控件。平板电脑控件有三种类型:
ExpressKeys
、touchtrip
和TouchRing
。每个控件都有一个或多个与其关联的功能。不要假设特定平板电脑的控件数量或与控件相关的功能数量。始终使用API查询信息
应用程序需要执行以下操作以覆盖平板电脑控件:
{kAECoreSuite,kAECreateElement}
的Apple事件,其中Apple事件的keyAEObjectClass
参数填充了cContext
的DescType
,keyaInserthere
参数中填充了平板电脑索引的对象说明符(cWTDTablet
),而keyASPrepositionFor
参数中填充了DescType的pContextTypeBlank
要销毁上下文,请向平板电脑驱动程序发送一个类/类型为{kAECore
,kAEDelete
}的Apple事件,其中keyDirect
Apple事件参数填充了上下文(cContext
)uniqueID(formUniqueID
)的对象说明符
其中大部分内容仅在文档页面的上下文中才有意义,其中为Carbon和Cocoa定义了大量C结构和帮助函数。(文档中的这一特定部分非常低。)是的,你说得对。Wacom平板电脑伪造了一个键盘事件,所以事实就是如此。但你的回答意味着也不可能区分USB键盘和macbook内置键盘的按键事件。我发现这很难相信,至少系统应该知道一个按键从哪里来,对吗?谢谢