我想在我的应用程序中模拟 Application Switcher
,我认为 CGEvent 也许可以做到这一点。
好了,在学习了一些关于CGEvent的基本信息之后,我可以模拟按键按下Command + Tab
。但是 Application Switcher 窗口只是闪烁并立即切换到另一个应用程序。
我意识到我需要按住
Command 键并按Tab 键来选择应用程序。所以,这是我的代码:
// Hold the Command key
let source = CGEventSourceCreate(.HIDSystemState)
let event = CGEventCreateKeyboardEvent(source, 55 as CGKeyCode, true)
CGEventSetIntegerValueField(event, .KeyboardEventAutorepeat, 1)
CGEventPost(.CGHIDEventTap, event)
// Press Tab key once
let source = CGEventSourceCreate(.HIDSystemState)
let keyDown = CGEventCreateKeyboardEvent(source, 48 as CGKeyCode, true)
CGEventSetFlags(keyDown, .MaskCommand)
CGEventPost(.CGHIDEventTap, keyDown)
let keyUp = CGEventCreateKeyboardEvent(source, 48 as CGKeyCode, false)
CGEventPost(.CGHIDEventTap, keyUp)
但是没用!有任何想法吗?谢谢!
最佳答案
keyup 事件中缺少命令标志。在 CGEventPost(.CGHIDEventTap, keyUp)
之前添加 CGEventSetFlags(keyUp, .MaskCommand)
。
关于swift - Cocoa:在 CGEvent 中模拟 Command+Tab,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/36375080/