2009-12-01 93 views
0

我将如何去编程OSX中的HUD类型覆盖。 我希望能够有一个应用程序,将显示在不同的应用程序的窗口上的某个点的文本。Mac OSX Overlay

因此,如果(其他应用程序)窗口移动,HUD部件将停留在另一个窗口的相同坐标处。

回答

1

对于窗口本身,使用您自己的自定义视图来绘制叠加元素的无边界透明窗口(大量示例)。

对于“其他应用程序的窗口”部分,没有公开的API可以让您顺利执行此操作。您使用通用访问及其窗口位置/导航API,但它需要您的用户打开“启用访问辅助设备”(我认为它仍然不能以编程方式完成)。当窗户移动时,我不相信它“让你知道”,但我可能是错的。如果确实如此,它可能是一次性的“这里就是我现在的位置”,所以你的覆盖面可能跟不上。我也不认为它给了你“窗口级别”,让你确保你在任何给定的窗口/表单/调色板“上方”。

唯一的其他选择(与其他应用程序的窗口一起移动)是一个系统范围的侵入式应用程序增强器(这是颇有争议的)。这很容易导致用户的系统错误并且不稳定(因此存在争议)。

+0

**注:**我没有兴趣在辩论应用增强。一点也不。 – 2009-12-01 15:53:36