NSEvent подача в систему

Может ли кто-нибудь показать пример того, как создать NSEvent, который имитирует нажатие возврата?


person objectiveccoder001    schedule 03.10.2010    source источник


Ответы (2)


Вы должны взглянуть на Справочник по классу NSEvent, а точнее, -keyEventWithType:location:modifierFlags:timestamp:windowNumber:context:characters:charactersIgnoringModifiers:isARepeat:keyCode:.

Оттуда это не должно быть сложно. Создайте все необходимые компоненты и отправьте событие, используя метод -sendEvent: NSApplication.

person Itai Ferber    schedule 03.10.2010
comment
Вам не нужен пример (его достаточно легко написать как есть), но вот пример: pastie. org/1199967. Он предполагает много информации, которую вы можете/должны изменить самостоятельно. Это зависит от того, для чего вы используете нажатие клавиши и чего вы пытаетесь достичь. - person Itai Ferber; 05.10.2010
comment
Я голосую за ответ с примером. - person P i; 05.07.2019

Вы можете использовать этот код Swift для создания простого события клавиатуры:

    let ThePoint = CGPoint(x:0,y:0)
    let theEventType: NSEventType = NSEventType(rawValue: 10)! // = KeyDown
    let theModifierFlags: NSEventModifierFlags = NSEventModifierFlags(rawValue: 0)
    var event = NSEvent.keyEventWithType(theEventType, location: ThePoint, modifierFlags: theModifierFlags, timestamp: 0.0, windowNumber: 0, context: nil, characters: "\n", charactersIgnoringModifiers: "", isARepeat: false, keyCode: 0)
    NSApplication.sharedApplication().sendEvent(event!)
person j.s.com    schedule 26.11.2014