11
我需要獲取NSView相對於屏幕的邊框/邊界。換句話說,我需要x和y座標是屏幕上的位置,而不是相對於超級視圖的位置。在Mac OS X上獲取NSView相對於屏幕的邊框/邊界10.6
我根據評論提出了以下解決方案。
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是在Mac OS X v10.7及更高版本。我需要10.6 SDK。 – junglecat 2012-04-24 03:36:49