2010-02-11 88 views
3

我想获得NSTextView中某个点的屏幕位置(NSPoint),这应该很简单,但结果总是有点偏离,X是完美的,但Y似乎改变。在NSTextView中的位置屏幕上的位置

我已经尝试了下面的代码的一些变化,但不能得到我的结果,是NSClipView搞砸了?

NSPoint p = [[self layoutManager] locationForGlyphAtIndex:r.location]; 
//NSPoint b= [self convertPoint:p toView:nil]; 
NSPoint screenlocation = [self convertPointToBase:p]; 

任何想法?

干杯!

MT

回答

1

按照documentation,对于一个字形的位置是相对于它的包围线片段。您应该使用线段的矩形来调整点。这应该修复你看到的变化。

+0

完美!非常感谢! – 2010-02-12 11:39:45