是否可以在另一个应用程序的窗口顶部创建一个带有Cocoa的HUD?例如,如果我要创建一个扑克HUD,它会在扑克客户端窗口上显示有关对手的信息,我将如何在OS X中实现它(使用Cocoa?)。
例如,我将如何重新创建以下Windows程序(PokerTracker HUD:在PokerStars扑克之星上显示HUD)?
答案 0 :(得分:0)
我不确定这是否是您所要求的,但我认为HUD元素将是NSWindow
设置为叠加层内的控件或视图。以下是配置它的一些关键步骤:
[myWindow setOpaque: NO];
[myWindow setBackgroundColor: [NSColor clearColor]];
[myWindow setLevel: NSStatusWindowLevel];
然后您需要跟踪哪个应用程序位于最前面,这样只有当目标应用程序位于前面时才会显示您的叠加层。我认为您可以通过找到目标应用的NSRunningApplication
然后键值观察其active
属性来实现此目的。