objective-c - 使应用程序起源从左上角开始
问题描述
我正在构建一个跨平台应用程序,在大多数平台上,当你有一个矩形来表示窗口框架位置时,它通常从左上角开始。
就像说:
Rectangle rect = new Rectangle(0, 0, 100, 100); // Starts at top left corner
但对于 Macos,它从左下角开始。
有什么办法可以改变这个吗?
另外,我正在寻找将其应用于NSWindow
.
解决方案
有一种方法NSWindow
允许您将窗口框架矩形的左上角定位在屏幕坐标中的给定点:
func setFrameTopLeftPoint(_ point: NSPoint)
或者,您可以为 macOS 做一个额外的步骤来获得翻转y
:
flippedY = screenHeight - y - windowHeight
推荐阅读
- gitlab - 使用 gitlab API 更新 gitlab CICD 变量失败
- java - 在 Hibernate 运行时用 LAZY 覆盖 fetchType EAGER
- javascript - React,将所有功能放在顶级组件中
- javascript - 纯javascript表格排序
- regex - 在 XSLT 中使用多个正则表达式:如何减少处理时间
- unity3d - 我应该使用哪个对撞机以及为什么要使用它?
- postgresql - 使用条件优化 Postgres 查询
- c# - c#中的非阻塞等待条件评估
- html - 溢出-x滚动忽略边距/填充权
- c# - 获取 imagePath 的错误“参数无效”