2016-04-01 17 views
1
  • obwohl ich die nextKeyView des NSTextField gesetzt ist, wird der Fokus von einem anderen NSTextField gewonnenNSTextField nextKeyView ignoriert

  • "Auto neu berechnete Ansicht Loop" versucht, aktiviert/deaktiviert

  • getoggelt „Full Tastaturbedienung“

  • auch versucht, die Registerkarte in

    Fang

Code

- (BOOL)control:(NSControl*)control textView:(NSTextView*)textView doCommandBySelector:(SEL)commandSelector { 

     BOOL result = NO; 

     if (commandSelector == @selector(insertTab:)) { 

      // tab action: 
      result = NO; 

     } 

     return result; 
    } 

Es Rückkehr Ja/Nein, müde, um das nächste Responder als

[self.window makeFirstResponder:self.nextKeyView] 

ohne Erfolg

+0

Ist 'self.nextKeyView' korrekt, wenn die Tab-Taste getroffen wird? Funktioniert der Rückwärts-Tab (Shift-Tab)? – Willeke

+0

yup, es war sicher richtig –

Antwort

0

Auswahl des NSTextField mit selectText:, einzustellen, während die 'Tab' gearbeitete Fang (Beachten Sie, dass Sie YES zurückgeben müssen, dh Sie bearbeiten das Tab) ... Sie können sich nicht allein auf die nextKeyView

verlassen

dies in Ihrer NSTextField Unterklasse und verknüpft die nextKeyView

- (BOOL)control:(NSControl*)control textView:(NSTextView*)textView doCommandBySelector:(SEL)commandSelector 
{ 
    BOOL result = NO; 

    if (commandSelector == @selector(insertTab:)) { 

     // tab action: 
     // always insert a tab character and don’t cause the receiver to end editing 
     if ([self.nextKeyView isKindOfClass:[NSTextField class]]) { 

      [(NSTextField *)self.nextKeyView selectText:self]; 
      result = YES; 

     } else { 

      //[textView insertTabIgnoringFieldEditor:self]; 
      result = NO; 

     } 

    } 

    return result; 
}