首页 > 解决方案 > 使应用程序起源从左上角开始

问题描述

我正在构建一个跨平台应用程序,在大多数平台上,当你有一个矩形来表示窗口框架位置时,它通常从左上角开始。

就像说:

Rectangle rect = new Rectangle(0, 0, 100, 100); // Starts at top left corner

但对于 Macos,它从左下角开始。

有什么办法可以改变这个吗?

另外,我正在寻找将其应用于NSWindow.

标签: objective-cswiftmacos

解决方案


有一种方法NSWindow允许您将窗口框架矩形的左上角定位在屏幕坐标中的给定点:

func setFrameTopLeftPoint(_ point: NSPoint)

或者,您可以为 macOS 做一个额外的步骤来获得翻转y

flippedY = screenHeight - y - windowHeight

推荐阅读