Ich habe eine NSTableView
, in der ich Tastaturereignisse in einer bearbeitbaren Zelle abfangen und die Zelle durch Zeichenfolgen ersetzen muss. Drücken Sie beispielsweise "a" und lassen Sie das "a" abgefangen und den Wert "Alpha" zugewiesen, wenn die Tabelle neu geladen wird. Die tatsächliche Situation ist etwas komplexer, da ich auch HID-Geräte handhabe, aber das ist eine ganz andere Geschichte. Es genügt zu sagen, ich möchte einfach in den Bearbeitungsmodus gehen und die Anzeige der vom Keyboard generierten Werte anhalten.Filterung von Text in NSTableView
Der letzte Teil davon (Anzeige "Alpha") ist einfach, aber ich kann den ersten Teil des Problems nicht herausfinden. Wenn ich die Tabelle von der Unterklasse abtrenne und sie zum Ersthelfer mache, kann ich das Ereignis keyDown:
erhalten, aber sobald der Benutzer auf eine Zelle doppelklickt und mit der Eingabe beginnt, verstummt dies.
Da keiner der anderen NSTableView
Komponenten (NSCell
, NSTextFieldCell
usw.) leiten sich von NSResponder
, ich bin vorausgesetzt, es ist ein NSTextField
dort irgendwo begraben.
Also, was ist der beste Weg, um Text zu filtern, sobald der Benutzer in Zelle Bearbeitungsmodus geht?