gpt4 book ai didi

cocoa - 在 Mac OS X 10.6 上获取相对于屏幕的 NSView 框架/边界

转载 作者:行者123 更新时间:2023-12-03 16:03:41 25 4
gpt4 key购买 nike

我需要获取 NSView 相对于屏幕的框架/边界。换句话说,我需要 x 和 y 坐标作为屏幕上的位置,而不是相对于其 super View 的位置。

我根据评论提出了以下解决方案。

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;

最佳答案

NSRect frameRelativeToWindow = [myView convertRect:myView.bounds toView:nil];
NSRect frameRelativeToScreen = [myView.window convertRectToScreen:frameInWindow];

关于cocoa - 在 Mac OS X 10.6 上获取相对于屏幕的 NSView 框架/边界,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/10291165/

25 4 0
Copyright 2021 - 2024 cfsdn All Rights Reserved 蜀ICP备2022000587号
广告合作:1813099741@qq.com 6ren.com