cgeventtap相关内容

使用事件点击无法在某些应用程序上模拟退格按钮

我正在尝试在Mac OS上模拟某些按键.如果按下'h'键(例如,如果用户键入'tigh',它将变成'ti'),则该代码应通过修改键盘事件来删除前一个字符.但是,它仅适用于某些应用程序.其他人完全拒绝我的活动.这段代码有什么问题吗? - (void)applicationDidFinishLaunching:(NSNotification *)aNotification { CFMac ..
发布时间:2020-07-19 19:52:55 移动开发

Swift应用程序启动后如何发布Quartz事件?

我正在编写一个简单的Cocoa应用程序,该应用程序将从AppleScript启动,只是将Quartz Event发布到另一个应用程序. 不需要用户界面,因此我从“界面生成器"中删除了该窗口,并从“应用程序代表"中删除了该窗口的出口.我从方法applicationDidFinishLaunching(_ :)调用私有方法postClickEvent().我在mouseCursorPositio ..
发布时间:2020-07-19 19:52:50 移动开发

可可:在CGEvent中模拟Command + Tab

我想在我的应用程序中模拟Application Switcher,我认为CGEvent可以做到这一点. 好吧,在学习了有关CGEvent的一些基本信息之后,我可以模拟按键Command + Tab.但是“应用程序切换器"窗口只是闪烁并立即切换到另一个应用程序. 我意识到我需要hold Command键并按Tab键选择应用程序.所以,这是我的代码: // Hold the Comm ..
发布时间:2020-07-19 19:52:45 移动开发

如何使用Quartz事件处理鼠标单击?

我有一个CGEventTap,我想观察并处理所有系统鼠标单击事件.检测鼠标单击事件很容易,但是我不希望系统的其余部分处理某些单击.而且我不知道怎么做. 系统仅发送低级事件,例如mouseUp,mouseDown,mouseDragged等.收到mouseDown事件时,我不知道它是否是鼠标单击的一部分,可能是拖动事件.我必须等待以下事件-如果是mouseUp,请点击.但是,如果我想自己处理点 ..
发布时间:2020-07-19 19:52:44 其他开发

事件点击:使用CGEventPost,kCGSessionEventTap,kCGAnnotatedSessionEventTap,CGEventTapPostEvent改变结果

我在通过事件水龙头发布事件时遇到了一个棘手的问题.我在kCGHIDEventTap上点击NSSystemDefined,然后将事件替换为新事件.我遇到的问题是,取决于我发布事件的方式,只有某些应用程序才能看到它.我的测试应用程序是Opera,Firefox,Quicksilver和Xcode.这是我在事件点击回调中尝试使用的不同技术,并产生了结果.我期望每个应用都有一个动作(“正确响应"); “系 ..

Mavericks +中的CGEventTapCreateForPSN(不建议使用GetCurrentProcess)

我正在使用CGEventTapCreateForPSN来捕获和过滤应用程序的密钥.我对拦截其他应用程序的事件不感兴趣.我很确定事件轻敲对于我的目的来说太过分了,但是我一直找不到更好的方法,并且使用事件轻敲还是可以的. 具体来说,这段代码可以满足我的要求. GetCurrentProcess(&psn); CFMachPortRef eventTap = CGEventTapCreate ..
发布时间:2020-07-19 19:51:37 其他开发

在OS X中以编程方式模拟/切换CAPS LOCK

我已经看到很多关于该主题的文章.但是在任何地方都没有找到明确的答案. 有没有办法在Objective-C或C代码中切换CAPS LOCK?我不是在寻找使用X11库的解决方案.我不担心LED的开/关状态.但是只是CAPS LOCK的功能(更改字母的大小写并在数字键上打印特殊字符). 为什么CGEvent不支持其他键呢? 解决方案 经过长时间的奋斗,我做到了这一点. 调用下面 ..
发布时间:2020-05-04 10:59:42 移动开发

CGEventTap阻止应用程序输入

我试图使用CGCreateEventTap来监控全局鼠标点击,但是当我这样做,似乎阻止与我自己的应用程序的交互。其他运行的应用程序中的鼠标点击工作正常,但我自己的应用程序(即DemoAppDelegate应用程序)不会完全响应。我可以拖动应用程序的主窗口,但红色/黄色/绿色窗口按钮是灰色的。 DemoApp的菜单也是不可点击的。 这似乎对我很奇怪,我一直无法想出来。使用事件抽头的例子很少,很 ..
发布时间:2016-12-07 18:34:41 其它移动开发

CGEventCreateKeyboardEvent和CGEventTapLocation

我很难处理自定义键盘事件。我想要能够发送任何有/没有kCGEventFlagMasks的任何键,如命令,alt,ctrl,shift ... 我想发送当前最前面的应用程序,让我们假设它是TextEdit,组合键cmd + t,它应该显示字体窗口。 但目前只有t被添加到TextEdit的当前文档。我尝试发布事件与自定义集CGEventFlags和或者生成keyDown和keyUp事件为c ..
发布时间:2016-12-07 03:41:54 其它移动开发