Zrobiłem niestandardowy NSView i wdrożyłem metodę keyDown:
. Jednak po naciśnięciu klawiszy metoda nigdy nie jest wywoływana. Czy muszę się zarejestrować, aby otrzymywać te wydarzenia? fyi, tworzę aplikację opartą na dokumencie i mogę obsługiwać ten kod w dowolnym miejscu (nie musi być w tym widoku). Jakie jest najlepsze miejsce do zrobienia tego w aplikacji opartej na dokumencie, aby zdarzenie miało miejsce w całej aplikacji?Kakao: Zdarzenie kluczowe w NSView nie wypalanie
14
A
Odpowiedz
27
Musisz zastąpić -acceptsFirstResponder
, aby zwrócić YES
.
7
w Swift:
class MDView: NSView {
override var acceptsFirstResponder: Bool { return true }
}
Powiązane problemy
- 1. Kakao NSView w komórce NSTableView
- 2. Zdarzenie onDrop TableDnD nie wypalanie
- 3. zdarzenie GridView RowCommand nie wypalanie
- 4. Kakao: Początek NSView x na dole
- 5. Ustaw kolor tła NSView i NSImageView w kakao
- 6. Kliknij przycisk zdarzenie nie jest wypalanie ale modalpopupextender pracuje
- 7. NSView mysz śledzenia
- 8. jQuery $ (document) .ready() nie wypalanie po window.location.href
- 9. Jak przechwycić kluczowe zdarzenie jQuery Dialog ESC?
- 10. Niestandardowe Walidator nie wypalanie
- 11. setNeedsDisplay nie wypalanie DrawRect
- 12. webhooks woocommerce nie wypalanie
- 13. DataTrigger nie wypalanie
- 14. Nie mogę uzyskać AVPlayerLayer, aby wyświetlać wideo w NSView
- 15. Zdarzenie upuszczania kropli jQuery UI droppable widget wypalanie dwa razy
- 16. Backbone: wypalanie zdarzenie tylko raz na zbiór „zmiany”
- 17. jQuery kliknij zdarzenie jest wypalanie wielokrotnie przy użyciu selektora klasy
- 18. Wypalanie zdarzenia klawiatury w JavaScript
- 19. Jak wydrukować hierarchię kontroli w kakao?
- 20. Swift 3 czasowy nie wypalanie
- 21. jQuery .validate() submitHandler nie wypalanie
- 22. Śledzenie zdarzeń w GA nie wypalanie
- 23. jQuery mouseup nie wypalanie po drag off linku
- 24. Otwory w NSView lub NSWindow
- 25. Monitorowanie katalogu w kakao/kakao Touch
- 26. Jak wyłączyć Kliknięcie do NSView za innym NSView
- 27. Przezroczyste tło WKWebView (NSView)
- 28. Kolor ramki NSView
- 29. Programowe tworzenie elementów sterujących w kakao
- 30. inotify nie wypalanie powiadomienia o modyfikacji pliku
mam ten sam problem co w Asker (custom NSView w aplikacji opartych na dokument), i po prostu overrided acceptsFirstResponder ale keyDown nie jest jeszcze uruchomiony. Jeśli masz jakąkolwiek inną radę, jaka mogłaby być, byłbym ci wdzięczny na wieki! – chm
Czy masz powody, aby sądzić, że Twój widok jest pierwszym respondentem okna? Możesz ustawić 'initialFirstResponder' w kodzie, zanim okno zostanie uporządkowane na ekranie lub połączyć je w IB. Innym razem możesz użyć '-makeFirstResponder:'. Upewnij się też, że twoje okno może stać się kluczowe. –