【发布时间】:2013-06-01 12:48:55
【问题描述】:
我正在开发一个显示不受支持的(由 XCode)文件格式的应用程序。所以我将NSBitmapImageRep 子类化为在NSImaageView 的子类中显示它。我已将其设置为可按比例缩放(向上或向下)。现在我需要添加一种在位图中获取像素坐标的可能性。所以我已经 ovveride mouseDown: 方法:
- (void)mouseDown:(NSEvent *)theEvent
{
NSLog(@"mouseDown: %ld", [theEvent clickCount]);
NSPoint point = [theEvent locationInWindow];
NSLog(@"point x: %f and y: %f", point.x, point.y);
}
获得 NSPoint 后,我应该尝试将其转换为位图的坐标,但首先我不知道如何解决 locationInWindow 返回 NSImageView 的 NSPoint 的问题,而不是通常较小的位图并且在NSImageView 中有未使用的边距,但我可以单击边距,mouseDown 事件在该边距中返回NSPoint。你知道我应该怎么做吗?
【问题讨论】:
标签: objective-c cocoa pixel nsimageview nspoint