查看Cocoa Mac OS X中的边界和坐标

时间:2015-02-18 10:59:08

标签: objective-c macos cocoa

我的Mac OS X应用程序中有一个简单的自定义视图,基本上是空的。这是代码:

@implementation MyDrawingView

- (id)initWithFrame:(NSRect)frame
{
    self = [super initWithFrame:frame];
    if (self) {
        // Initialization code here.
    }

    return self;
}

- (void)drawRect:(NSRect)dirtyRect
{
    NSLog(@"bounds:x:%f y:%f w:%f h:%f", self.bounds.origin.x, self.bounds.origin.y, self.bounds.size.width, self.bounds.size.height);
}

@end

这是NSLog的输出:

bounds:x:0.000000 y:0.000000 w:713.000000 h:509.000000

我在这里阅读了有关用户空间的信息:Coordinate Systems and Transforms

这是否意味着我的视图将在屏幕上显示713/72英寸宽?它并没有在现实中显示出那么广泛。我的视图中有背景颜色设置,所以我可以看到它和实际颜色一样宽。

1 个答案:

答案 0 :(得分:1)

该视图宽713分。 713 * screenscale =像素大小,然后您可以使用dpi来显示所显示的英寸;)