【发布时间】:2017-06-13 23:59:30
【问题描述】:
我正在尝试从 macos App 模拟 iphone 模拟器上的鼠标点击,因为我正在使用 CGEvents 。
iPhone 模拟器的进程 ID 为 33554
let point = CGPoint(x: 500 , y:300)
let eventMouseDown = CGEvent(mouseEventSource: nil, mouseType: .leftMouseDown, mouseCursorPosition: point, mouseButton: .left)
let eventMouseUp = CGEvent(mouseEventSource: nil, mouseType: .leftMouseUp, mouseCursorPosition: point, mouseButton: .left)
eventMouseDown?.postToPid(33554)
eventMouseUp?.postToPid(33554)
我还注意到它在 ios 模拟器窗口聚焦时模拟鼠标单击,并且仅适用于此工具栏但不适用于模拟器,例如,如果我将 CGPoint 更改为 (0,30),它将单击模拟器选项
但是当我给 CGPoints 以单击 iOS 模拟器中的应用程序时,它不起作用
但是,我可以使用
将键盘事件发布到模拟器let keyboardDown = CGEvent(keyboardEventSource: nil, virtualKey: 6, keyDown: true)
let keyboardUp = CGEvent(keyboardEventSource: nil, virtualKey: 6, keyDown: false)
keyboardDown?.postToPid(33554)
keyboardUp?.postToPid(33554)
【问题讨论】:
-
你还记得 macOS 上的 y 轴是反转的吗?
-
您有没有办法让它工作?我有完全相同的问题。键盘事件就像一个魅力,但鼠标没有。
标签: swift macos mouseevent low-level