问题标签 [nscursor]
For questions regarding programming in ECMAScript (JavaScript/JS) and its various dialects/implementations (excluding ActionScript). Note JavaScript is NOT the same as Java! Please include all relevant tags on your question; e.g., [node.js], [jquery], [json], [reactjs], [angular], [ember.js], [vue.js], [typescript], [svelte], etc.
swift - 如何防止 NSCursor 发生变化?
我在尝试阻止光标更改时遇到问题。我尝试在整个窗口上放置一个覆盖视图,但是,如果在该覆盖下存在一个NSTextView
,这将强制光标改变。我想阻止这种情况,并保留箭头光标,直到我的覆盖视图被删除。
覆盖 cursorUpdate 方法不起作用:
谢谢!
即使这个问题的答案也无济于事。此解决方案仅在覆盖视图小于 TextView 时有效。
swift - 如何在 SKScene 中设置自定义光标?(XCode、Swift4、Spritekit)
我想为我的项目使用自定义光标。现在,在 XCode 中使用其中一个系统游标并不重要,我只需调用:
(只是一个例子)
这工作正常,但后来我尝试通过以下方式设置我的自定义光标:(在 didMove: 内查看或在 sceneDidLoad() 内,这似乎无关紧要。)
当我尝试构建时,我在第 3 行得到一个错误,说“意外发现 nil”。
所以我把代码改成这样:
现在项目构建,但没有任何反应。光标不变。
我也在这里尝试了这些行:
同样,项目构建,但光标没有改变。我在这里做错了什么?
我试图遵循我能找到的所有指导方针,但关于光标事件的 Apple 文档并没有多大帮助,因为它严重过时且与鼠标相关的主题通常非常罕见,因为大多数东西都是关于 ios 的。在此先感谢您的帮助。
macos - NSCursor 获取“移动”(4 个箭头/箭头交叉)光标
我想获取移动光标的 NSCursor(图 1)。
我正在寻找未公开暴露的游标NSCursor
并遇到了这个问题。特别相关的是最后一个答案,其中包含选择器_moveCursor
。但是,当设置选择器返回的光标时,我得到以下结果:
以及负责选择光标的代码:
其余的位于股票可可应用程序中,代码段位于mouseEntered
.
我想解决上述 SO 问题中的其他答案,其中涉及从图像文件加载光标,您可以在其他框架中找到这些答案,例如 webkit。
我的问题归结为:是否有另一种方法可以实现这一点,因为没有更好的术语来获得这个光标,或者我应该只使用我可以在上述框架中找到的矢量图形?
如果该框架在旧版本的 macos 上不可用,我加载文件的问题可能会限制我,并且我自己持有资源也不是一个理想的解决方案。
让我知道我是否遗漏了什么或是否有其他选择。
(为截图质量道歉,截图不包括光标)
swift - 如何在悬停 NSTextView 上更改光标?斯威夫特 4,Xcode 9.4
我有一个简单NSTextView
的,看起来像一个超链接,我想在用户悬停它时更改指针上的光标NSTextView
。我该怎么做?我知道NSCursor,但是苹果文档很烂而且没有例子,我不知道如何使用它。
这是我的NSTextView
:
macos - Cocoa API 不断重置我们的 NSCursor
我们有一个应用程序,它有一个全屏视频播放器和一个浮动窗口(托盘),可以为用户提供修改视频的工具,视频播放只有一个视图,所有的绘图都发生在那里,它是一个 NSOpenGLView子类。如果用户单击托盘中的按钮,然后将托盘移动到视频视图上,我们使用 mouseEntered: 将光标 -[NSCursor set] 更新为 1 以反映用户正在绘图,但大约一秒钟后, Cocoa 将光标设置回箭头光标。
我在 -[NSCursor set] 上创建了一个符号断点,以查看它的来源,这是我得到的调用堆栈。
我尝试将实现从使用 -[NSCursor set] 和 mouseEntered: events 更改为 -[NSView addCursorRect:cursor:] 并带有整个视图边界的矩形,但这根本不会设置光标,可能是因为我们正在使用一个 NSOpenGLView 子类?
奇怪的是光标并不总是重置,如果您单击按钮并暂停然后移出托盘,我们不会得到带有上述堆栈的 -[NSCursor set],只有当您直接移动时,才有可能它与托盘更改的调整窗口框架光标大小有关,但我不确定。
我想出了一个使用 mouseMoved 的 hacky 解决方案:检查光标是什么,但它只有在用户移动光标时才有效,我宁愿弄清楚为什么我得到不需要的 -[NSCursor set] 和改为修复它。
swift - 从 macOS 屏幕截图工具复制光标行为
免责声明;在 Swift/macOS 开发方面几乎不是新手。
macOS 上的Ctrl+Shift+4屏幕截图工具有一个伴随的光标变化,我一直在寻找一种复制方式。
在其初始启动状态下,它是一个带有像素坐标的十字准线,然后通过按空格将其切换到窗口捕获,将光标更改为相机。
无论您是否选择其他应用程序,光标都会保持全局变化。
我试图通过创建具有 .floating 级别的透明全屏 NSWindow 并更改内容视图的光标来复制此行为。
这行得通,有点……但有一些烦人的怪癖。
首先,视图的不透明度似乎不能严格为零,但至少有一部分 >= 0.01。我在NSView的文档中没有提到这一点,但这里提到了UIView 。对于内置的截图工具,似乎没有任何 0.01 alpha 覆盖。
其次,切换到任何应用程序时,.floating窗口仍然在顶部,但会使视图失去焦点,这意味着光标会返回默认值。在这种情况下,内置的截图工具有一个很短的延迟,当一个新的应用程序出现在前面时,然后再次将光标更改为自定义的。
我是否采取了完全错误的方法,或者我只需要扭转一些旋钮和刻度盘,这个就可以工作了吗?
非常感谢任何指针!
nscursor - 如何创建带有 alpha 掩码的自定义 NSCursor?
NSCursor
当我在alpha 通道中创建自定义时,Objective-C
蒙版出现XOR
在下面的屏幕上。我期望 alpha 通道值为零是透明的,而不是XOR
下面的图形。我确定我的掩码数据在透明和不透明的ARGB
地方是正确的。我究竟做错了什么?A=0
A=255
swift - Swift:更改系统光标
我在 Swift 中创建了一个简单的 macOS 应用程序项目。该应用程序使用自定义图像更改 NSCursor 图像。这很好用,但只要我点击不同的应用程序,例如 Safari,macos 就会恢复默认系统光标。
有没有办法禁用这种行为?我的目标是在我的应用程序运行时保持自定义光标,而不仅仅是在它集中时。
谢谢!
swift - 鼠标悬停在 NSButton 更改光标上(对于 OSX)
我做了一个 NSButton 的子类
在我的 VC 课上,我添加了
调用子类但仍然没有用。我究竟做错了什么。
swift - 快速在跟踪区域内禁用光标更改
我试图在光标位于视图内时更改光标。问题是光标有时会自动重置为默认值(例如,当出现通知弹出窗口时。)
据我所知NSWindow
,disableCursorRects()
应该阻止光标因其他进程而改变。也许我用错了?