11
Necesito obtener un marco/límites de NSView relativos a la pantalla. En otras palabras, necesito que las coordenadas xey sean la posición en la pantalla, no la posición relativa a su supervista.Obtener marcos/límites de NSView relativos a la pantalla en Mac OS X 10.6
He encontrado la siguiente solución basada en los comentarios.
NSRect frameRelativeToWindow = [self.view
convertRect:self.view.bounds toView:nil
];
#if MAC_OS_X_VERSION_MAX_ALLOWED > MAC_OS_X_VERSION_10_6
NSPoint pointRelativeToScreen = [self.view.window
convertRectToScreen:frameRelativeToWindow
].origin;
#else
NSPoint pointRelativeToScreen = [self.view.window
convertBaseToScreen:frameRelativeToWindow.origin
];
#endif
NSRect frame = self.view.frame;
frame.origin.x = pointRelativeToScreen.x;
frame.origin.y = pointRelativeToScreen.y;
convertRectToScreen está disponible en Mac OS X 10.7 y posteriores. Necesito el 10,6 SDK. – junglecat