如何隐藏Swift中的光标?
How to hide the cursor in Swift?
我正在尝试制作第一人称游戏,移动鼠标会改变摄像机角度,类似于 Roblox 中的第一人称模式或 Minecraft。怎么做?我在问如何做基本功能,所以没有代码可提供。我只需要知道如何隐藏和锁定 Swift 或更具体地说是 Metal 或 Cocoa.
中的光标位置
您可以子类化 NSView,为鼠标进入和退出添加一个跟踪区域,重写 NSView mouseEntered 和 mouseExited 方法,只隐藏和取消隐藏光标:
import Cocoa
class HiddenCursorView: NSView {
override func awakeFromNib() {
addTrackingArea(NSTrackingArea(rect: bounds, options: [.activeAlways, .mouseEnteredAndExited], owner: self, userInfo: nil))
}
override func mouseEntered(with event: NSEvent) {
NSCursor.hide()
}
@objc override func mouseExited(with event: NSEvent) {
NSCursor.unhide()
}
}
我正在尝试制作第一人称游戏,移动鼠标会改变摄像机角度,类似于 Roblox 中的第一人称模式或 Minecraft。怎么做?我在问如何做基本功能,所以没有代码可提供。我只需要知道如何隐藏和锁定 Swift 或更具体地说是 Metal 或 Cocoa.
中的光标位置您可以子类化 NSView,为鼠标进入和退出添加一个跟踪区域,重写 NSView mouseEntered 和 mouseExited 方法,只隐藏和取消隐藏光标:
import Cocoa
class HiddenCursorView: NSView {
override func awakeFromNib() {
addTrackingArea(NSTrackingArea(rect: bounds, options: [.activeAlways, .mouseEnteredAndExited], owner: self, userInfo: nil))
}
override func mouseEntered(with event: NSEvent) {
NSCursor.hide()
}
@objc override func mouseExited(with event: NSEvent) {
NSCursor.unhide()
}
}