2010-12-16 61 views
1

如何在可可中创建自定义形状跟踪区域? 在可可中,我只能找到矩形作为跟踪区域。可可自定义形状跟踪区域

Carbon通过HIViewNewTrackingArea提供此功能,通过它可以将任何HIShapeRef注册为跟踪区域。我们在可可中有类似的东西吗?

我有一个复杂的形状,我想在不同的区域更改鼠标光标。

一种方法我试过做了覆盖整个区域大的跟踪矩形,然后使用 事件的mouseMoved变化的鼠标。

你可以建议任何其他方式来做到这一点。

这本来是比较容易,如果有一个类似的API像HIViewNewTrackingArea可可。

谢谢。

回答

3

跟踪区域在Cocoa框架中只是矩形。你可以覆盖你的整个区域,然后创建一个NSBezierPath(你可以保留但不要中风或填充),并通过-containsPoint:来询问它是否在它内部。

追踪区域“激活”鼠标跟踪,而路径提供定制型的点击检测机制。

+0

谢谢:),终于解决了它使用多个跟踪区域来覆盖路径。 – 2010-12-17 12:21:06