首页
学习
活动
专区
圈层
工具
发布
社区首页 >问答首页 >如何在Mac的颜色选择器上实现放大镜玻璃?

如何在Mac的颜色选择器上实现放大镜玻璃?
EN

Stack Overflow用户
提问于 2013-03-21 02:37:57
回答 1查看 1.1K关注 0票数 1

是左上角的放大镜玻璃:

我试过两种方法,但都失败了。

  1. 单击放大镜玻璃后,创建一个新的游标(带有放大镜图像的游标,或交叉公平的光标,不管怎样),然后按下它,然后调用nextEventMatchingMask:untilDate:inMode:dequeue: of NSApplication来吃掉所有事件,直到我们得到NSLeftMouseUp事件为止。它确实有效,但并不完美,其他窗口或应用程序将在点击点离开原始窗口时被命令到前面。
  2. 创建一个NSColorPanel,尝试发送一个假鼠标单击事件到面板。它工作在彩色轮,但没有任何影响,一旦我改变事件的位置到放大镜玻璃按钮。

问题1:在用户单击左边按钮之前,我如何才能禁止所有系统鼠标事件的分发?

问题2:这有可能吗?

谢谢你的回应。

EN

回答 1

Stack Overflow用户

回答已采纳

发布于 2013-03-30 08:51:21

如果我们想阻止系统事件的调度,可以使用石英事件服务,但是它有两个问题:

  1. 用户应启用无障碍;
  2. 石英事件服务禁止在沙箱下进行。

要使方法1成功是不可能的。

受@CodaFi的启发,我决定使用NSWindow的子类来实现它。在gitbub https://github.com/wentingliu/ScreenPicker上创建一个示例项目,然后检查它。

票数 3
EN
页面原文内容由Stack Overflow提供。腾讯云小微IT领域专用引擎提供翻译支持
原文链接:

https://stackoverflow.com/questions/15538484

复制
相关文章

相似问题

领券
问题归档专栏文章快讯文章归档关键词归档开发者手册归档开发者手册 Section 归档